- Samsung Galaxy A55 - új év, régi stratégia
- Yettel topik
- Honor 200 - kétszázért pont jó lenne
- Honor 200 Pro - mobilportré
- Youtube Android alkalmazás alternatívák reklámszűréssel / videók letöltése
- Huawei Watch GT 5 Pro - egészség + stílus
- Samsung Galaxy S21 és S21+ - húszra akartak lapot húzni
- iPhone topik
- Apple Watch
- Mi nincs, grafén akku van: itt a Xiaomi 11T és 11T Pro
-
Mobilarena
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
Delila_1
veterán
válasz
tomi_x #53880 üzenetére
Az Fferi által leírtakon kívül találkoztam olyan fájllal, ahova a felhasználó régebben csatolt egy halom képet, majd az ezeket tartalmazó oszlopokat törölte. Csodák csodája, hogy a képek megmaradtak, de nem látszottak, mert a szélességük 0 pont értékű lett.
Itt is a jó öreg F5-ös ugrás menü segített. Irányított, objektumok. Ez az összeset kijelölte, a Delete billentyű pedig mindet egyszerre törölte. A fájl mérete kicsire zsugorodott, a műveletek villámgyorsak lettek.
-
Fferi50
Topikgazda
válasz
tomi_x #53880 üzenetére
Szia!
A sok számításon kívül előfordulhat a következő is:
1.A képleteid jelentős része egész oszlop /ritkábban de előfordulhat sor) hivatkozást (Pl.A:A) tartalmaz, ami beírásnál kényelmes, de számításnál igencsak időigényes (milliós nagyságú a sorok száma az új verziókban).
Erre megoldás a teljes oszlop helyett egy várhatóan előforduló legnagyobb terület használata (pl. A1:A50000) a képletekben.
2.Problémát szokott még okozni - és a méret erre is utalhat - ha olyan területek vannak, amelyek ugyan nem használatosak de valamilyen korábbi cselekmény miatt benne vannak a munkalapokban. Pl. egy formázást vagy bármi mást tartalmaz, valamerre a munkalapon.
Erre úgy derithetsz fényt, ha az F5 funkcióbillentyű párbeszéd panelján az irányított gombot benyomva utána kiválasztod az utolsó cella opciót. Ha nem az érvényes adataid végére ugrik, akkor az így már felesleges sorokat/oszlopokat törölve csökken a fájl mérete és nagy eséllyel gyorsul is a számítás.
3.Adatbevitelkor (kivéve, ha rögtön szeretnél számítási eredményt látni) érdemes kikapcsoni az automatikus számolást - Képletek - számolási beállításoknál megtalálod, majd amikor végeztél visszakapcsolni.
Üdv. -
föccer
nagyúr
válasz
tomi_x #53881 üzenetére
Jó eséllyel rengeteg számítás, tömbképlet, és implicit képlet van benne (indirekt, index pl). Ezek baromira meg tudják nyújtani a számítás menetét.
Én az ilyen problémákat úgy szoktam kezelni, hogy felmakrózom az elemzési feladatokat (pörgetem a paramétereket, az eredményeket kimentem egy temp munkalapra). Elindítom este és reggelre szépen megcsinál mindent.
Ha nagyon összetett és nagyon nagy számú számítást kell végezni, azzal nem lehet nagyon mit csinálni. Vagy optimalizálod a műveletek számát, vagy erősebb vasat kérsz a főnöktől.
Én így kaptam egyedülégént a hazai cégcsoportban 64 bites office-t. Mindenki csak 32 biteset kap.
-
Fferi50
Topikgazda
válasz
tomi_x #53289 üzenetére
Szia!
Ezt a hibát melyik sornál kapod?
Mert ez azt jelenti, hogy a hivatkozott objektumod nem találja - rossz nevet adtál meg vagy nincs is olyan nevű objektum.
Activesheet elvileg minden megnyitott munkafüzetben van. Cella pl. nincs a grafikonokat(diagram) tartalmazó munkalapon.
Ezért lenne érdekes, melyik sorra panaszkodik.
Üdv. -
válasz
tomi_x #53289 üzenetére
Ugyanazon a soron?
Akkor másképp próbálj meg rá hivatkozni, plWorksheets("Munka2").Cells(13, 3).Value = megrendelo
Worksheets(2).Cells(13, 3).Value = megrendelo
ActiveWorkbook.Worksheets(2).Cells(13, 3).Value = megrendeloSajnos a makródat teljes egészében nem tudjuk debuggolni, csak kiherélve.
Ha a fenti lehetőségek sem hoznak eredményt, akkor sajnos passzolom. -
válasz
tomi_x #53287 üzenetére
Az ActiveWorkbook-nak nincs Cells tulajdonsága, csak az ActiveSheet-nek.
Ezt a hibát kell kapnod.pl. erre nem fogsz hibát kapni
ActiveSheet.Cells(13, 3).Value = megrendelo
-
-
-
Fferi50
Topikgazda
válasz
tomi_x #52332 üzenetére
Szia!
Akkor néz utána a többszintes adatérvényesítésnek, szerintem itt is van rá megoldás.
(első betű után szűkül az adatérvényesítési lista - talán ez elég is lehet, de a második után is lehet még szűkíteni.) Olyan pl. hogy fő lista zöldség, gyümölcs stb. alábontás paprika, paradicsom, sárgarépa stb ill. alma, narancs, körte stb.
Üdv. -
Fferi50
Topikgazda
-
Fferi50
Topikgazda
válasz
tomi_x #46657 üzenetére
Szia!
Ahogyan a hiba leírás is mutatja, amennyiben nem talál ilyen tartalmú cellát, akkor az "a'" változó értéke Nothing - azaz üres. Egy nem létező objektumnak pedig értéke sincs.
Mielőtt további műveleteket végeznél, meg kell vizsgálnod, hogy van-e találat:'Set a= sor után
If a Is Nothing then
Msgbox "nincs"
Else
Msgbox "van"
End If
Üdv. -
Delila_1
veterán
válasz
tomi_x #46141 üzenetére
Próbáld ezzel:
Sub Formazas()
Dim sor As Long, usor As Long
usor = Range("A" & Rows.Count).End(xlUp).Row
For sor = 2 To usor
If Cells(sor, 1) = Cells(sor + 1, 1) Then
With Range(Cells(sor, 1), Cells(sor, 15)).Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
End With
Range(Cells(sor, 1), Cells(sor, 15)).Borders(xlEdgeBottom).LineStyle = xlNone
Else
With Range(Cells(sor, 1), Cells(sor, 15)).Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlMedium
End With
Range(Cells(sor, 1), Cells(sor, 15)).Font.ColorIndex = xlAutomatic
End If
Next
End Sub
-
Lasersailing
senior tag
válasz
tomi_x #46141 üzenetére
Szia,
Ha a VBA-ban a makrót F8-al indítod el, akkor lépésenként látod, hogy mit csinál (Nem kell "Várj" típusú ellenőrzésekkel vesződni. Ha nagyon hosszú a makró futása, akkor a megfelelő sorra állva F9-el be tudod jelőlni, hogy ott álljon meg a makró futtatása. (piros lesz a kijelőlt sor. (ugyanezt elérheted az ablak bal szélén lévő sávra kattintva is).
(sárgával jelőli, hogy hol tart).Arra figyelj, hogy ha lépésenkénti futás közben pl. a kijelőlést megváltoztatod, akkor ő a változtatás hatásával megy tovább. Futás közben is lehet korlátozásokkal változtatni a makrót, sőt a sárga "csíkot" egérrel át lehet húzni máshova is. (ha pl. rájösz, hogy valami nem jó, akkor átírod, majd újra tudod lépésenként futtatni).
Szerk:
Az alábbi sor egyenlőségjele után kimaradt a ".value". Nem biztos, hogy ez a gond, de én beírnám:If Worksheets(1).Cells(i, 1).Value = Worksheets(1).Cells(kovetkezo_sor, 1).value Then
-
Fferi50
Topikgazda
-
Fferi50
Topikgazda
válasz
tomi_x #45916 üzenetére
Szia!
Én csinálnék neki fejléceket az első sorba, ezután pedig kimutatást.
A kimutatásban sorcímke a nevek (A oszlop), oszlopcímke a tevékenység(D oszlop), az értékek pedig az órák (B oszlop) összesítve.
A tevékenységek közül pedig összevonnám amiket együtt szeretnék látni második oszlopcímkének.
Üdv. -
Delila_1
veterán
válasz
tomi_x #45243 üzenetére
Kevés megjegyzés esetén rákattintasz a megjegyzésre, majd a Delete gombbal kitörlöd.
Sok megjegyzésnél érdemes egy rövid makró futtatni.
Sub OhneMegj()
Dim sz As Object
For Each sz In ActiveSheet.Comments
sz.Shape.Select True
Selection.Delete
Next
End SubLátod, a makró kijelöli, majd kitörli egyenként a megjegyzéseket. Ha elhagyjuk a kijelölést, valamiért a cella jobb felső sarkában megmarad a kis piros háromszög, és nem is enged új megjegyzést beszúrni oda.
Szerk.: Lehet, hogy a képen látható, megjegyzés kinézetű szöveg nem megjegyzés, hanem egy érvényesítéshez csatolt útmutató.
-
Fferi50
Topikgazda
válasz
tomi_x #44392 üzenetére
Szia!
Az idézőjeleket meg kell duplázni a képleten belül:Sheets("Összesítés").Range("M2").Formula = "=MID(CELL(""filename"",$A$1),1,(SEARCH(""["",CELL(""filename"",$A$1)))-1)"
Egyébként ha makró(részletet) v. képletet írsz, használd a "</>" kapcsolót (hátulról a harmadik).
Üdv. -
-
-
Pakliman
tag
válasz
tomi_x #44145 üzenetére
Az A oszlop tartalmazza az "azonosítót", az E oszlopba kell rakni a képletet.
A képen a D oszlop tartalmazza az értéket, amit összesíteni akarsz.
Ha a tényleges táblázatban ez a bizonyos D (vagyis az érték) nem szerepel, akkor hozd létre, mint segédoszlop és a képletben arra az oszlopra hivatkozz. -
Fferi50
Topikgazda
válasz
tomi_x #44091 üzenetére
Szia!
"amint egy cellába valaki beír adatot az zárolt legyen'"
Aztán, ha javítani szeretne az adaton, mert elírta, akkor mi lesz?
Ezt egyébként csak makróval lehet megcsinálni és védetté kell tenni a munkalapot hozzá.
Azt írtad, közösen használjátok. Ez mit jelent? Közös használatúvá van téve a munkafüzet vagy egyszerre csak egy user használhatja egy időben, de többen is beleírhatnak?
Egyébként nézd meg a munkalap védelmet. Ott lehet tartományokat rendelni userekhez, amiket csak meghatározott felhasználók módosíthatnak. Nem elég ez neked?
Üdv. -
Véreshurka
senior tag
válasz
tomi_x #44087 üzenetére
Saját parasztos megoldásom (biztos van elegánsabb is):
Ha kijelölöd a cellákat amiket védeni szeretnél, akkor jobb klikk --> cellaformázás --> védelem --> zárolt, majd véleményezés menüpont és ott a lapvédelemmel tudod jelszóval védeni.
(#44088) Fferi50: alapvetően amikor létrehoztam a makrót már Sub - End Sub közé illesztettem mert már ott volt. De nagyon nem értem még a makrózást, csak a makrórögzítést szoktam használni... Lényeg, hogy megy. Sokszor elfelejtem képletek elől a HAHIBA-t és csak a végén jut az eszembe, ezután már nem lesz gond
Köszi még egyszer!
Új hozzászólás Aktív témák
Hirdetés
- Azonnali készpénzes Intel i3 i5 i7 i9 8xxx 9xxx processzor felvásárlás személyesen / csomagküldés
- AKCIÓ! Microsoft XBOX Series S 512GB játékkonzol garanciával hibátlan működéssel
- LG 27GR93U-B - 27" IPS - UHD 4K - 144Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDR 400
- AKCIÓ! MSI B450 R5 5500 16GB DDR4 512GB SSD RTX 2070 8GB GDDR6 Rampage Shiva Zalman 500W
- LG 42C4 - 42" OLED evo - 4K 144Hz - 0.1ms - NVIDIA G-Sync - FreeSync - HDMI 2.1 - A9 Gen7 CPU
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged