- Mobil flották
- Yettel topik
- Egy óra, két rendszer
- Samsung Galaxy Watch7 - kötelező kör
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Milyen okostelefont vegyek?
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- Telekom mobilszolgáltatások
- Honor Magic5 Pro - kamerák bűvöletében
- Redmi Note 13 Pro 5G - nem százas, kétszázas!
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
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
-
Fferi50
Topikgazda
válasz
TheSaint #52533 üzenetére
Szia!
Milyen Excel verziód van?
Egyszer régen volt egy olyan hiba - ami ehhez nagyon hasonló volt, amit a formkezelő hibája okozott - növekedtek, zsugorodtak elmásztak a gombok.
Ha jól emlékszem a Microsoft Forms 2.0 object library --- FM20.dll volt a bűnös, azt kellett lecserélni - ill. még egy hozzá kapcsolódó dll-t.
Bár nem hiszem, hogy most is ez lenne a gond, de talán érdemes lenne utána nézned a MS Support oldalán.
Üdv. -
Fferi50
Topikgazda
válasz
TheSaint #52513 üzenetére
Szia!
Nem látok benne olyan problémát, ami okozhatja ezt a jelenséget. Pár kérdésem lenne:
1. milyen környezetben fut és milyen excel verzió?
2. nem értem, hogy miért kell 15 másodpercet várni. Ha a háttérbeni frissítés miatt, akkor a táblázatok BackgroundQuery tulajdonságának False -ra állítása ezt szükségtelenné teszi. Ebben az esetben ugyanis nem fut tovább a makró, amíg a frissítés meg nem történik. Ha engedélyezve van a háttérbeni frissítés, akkor a Refreshing tulajdonság mutatja, hogy folyamatban van-e még a frissítés.
3. Nem értem ezt a sort:If ThisWorkbook.Name = "e.xlsm" Then
A ThisWorkbook mindig az a munkafüzet, amelyből a makró elindult. A Workbook_Open esemény csak ebből a munkafüzetből indulhat.
4. Miért van a végén az 1 perces időzítéssel a Thisworkbook mentése és bezárása?
Ha bezáródik a futás - emalküldés után, akkor honnan tudod, hogy összezavarodott a gombok és a gördítés?
Mi nyitja meg ezt a munkafüzetet?
Vannak-e eseménykezelők a munkafüzetben?
Üdv. -
Fferi50
Topikgazda
-
TillaT
tag
válasz
TheSaint #50366 üzenetére
Köszönöm. Nekem úgy tűnik, hogy nem befolyásolja a korábban tapasztaltakat.
Változatlanul nem tudom a sorazonosítókat és az oszlopazonosítókat használni teljes sorok és/vagy teljes oszlopok kijelölésére.
(Ritkán használok billentyűkombinációkat munka közben. Mindig van egy egér a zsebemben.
- Nekem az "rögzült be", hogy ha pl. be szeretnék szúrni 3 új oszlopot a G oszloptól kezdődően, akkor az oszlopazonosítókon (sorfejléc, oszlopfejléc) mozgatva az egeret kijelölöm a G-I oszlopokat, majd jobb egérgomb és a 'Beszúrás' opciót választom.
- Ha ugyanezt a beszúrást egy olyan munkafüzet munkalapján szeretném megtenni, amelyikben a kódom is fut, akkor táblázaton belül a G oszlophoz tartozó bármelyik sorban ki kell jelöljek 3 egymás melletti cellát, majd a szokásos jobb egérgomb és 'Beszúrás' opció választása után a felugró vezérlőpanelen még ki kell választanom a Beszúrás módját.
Azaz a kijelölés szempontjából teljesen használhatatlanok (kattinthatatlanok) a sor- és oszlopazonosítók.)
Ebből leginkább az zavar, hogy nem értem a "Miért"-jét, hogy miért működik így. -
TillaT
tag
válasz
TheSaint #50363 üzenetére
Köszönöm. Kicsit más úton, a Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) -el próbálkoztam, és eddig úgy tűnik, hogy jól működik. Azonnal reagál az aktív munkalapon a változásokra. Mindegy, hogy beszúrok vagy törlök sorokat, oszlopokat.
Arra még nem sikerült rájönnöm, hogy a kód hatása alatt miért nem engedi a sorok és/vagy oszlopok kijelölésével az egész sorok/oszlopok beszúrását/törlését; hogy miért csak a táblázaton belüli cellák kijelölésével enged beszúrni és törölni egész sorokat/oszlopokat, ... de ez a működés szempontjából kevésbé zavaró, mint ami az alap problémám volt.
Még egyszer köszönöm a segítséget és az együttgondolkodást.
Dim lastRow As Long
Dim lastColumn As Long
Dim scrollArea As Range
Dim ActiveSheetNumber As Integer
Private Sub Workbook_Open()
ThisWorkbook.Sheets(1).Activate
Call ScrollAreaInterpret
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Call ScrollAreaInterpret
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Rows.Count > 1 Or Target.Columns.Count > 1 Then
Call ActSheetChange
End If
Call ScrollAreaInterpret
End Sub
Sub ScrollAreaInterpret()
lastRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, "A").End(xlUp).Row
lastColumn = ActiveSheet.Cells(1, Columns.Count).End(xlToLeft).Column
Set scrollArea = ActiveSheet.Range("A1").Resize(lastRow, lastColumn)
ActiveSheet.scrollArea = scrollArea.Address
End Sub
Sub ActSheetChange()
ActiveSheetNumber = ActiveSheet.Index
ThisWorkbook.Sheets(ActiveSheetNumber + 1).Activate
ThisWorkbook.Sheets(ActiveSheetNumber).Activate
End Sub
-
TillaT
tag
válasz
TheSaint #50361 üzenetére
Köszönöm, ezt már próbáltam. Sajnos ez is csak részlegesen tesz úgy ahogy én szeretném. Ennél is el kell kattintani, majd vissza arra a munkalapra, amin korábban a sor/oszlopbeszúrást megejtettem.
Esetleg létezhet olyan metódus, amivel a háttérben, a felhasználó által érzékelhetetlen pillanatig aktívvá tehetnék egy másik munkalapot, majd egyből visszatérnék az adott munkalapra? Így utánozva azt, mintha ténylegesen el és visszakattintottam volna.
Mindjárt teszek is egy próbát. -
Delila_1
veterán
válasz
TheSaint #50295 üzenetére
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 11 Then
Application.EnableEvents = False
Visszajelzes Target.Row 'Meghívjuk a másik makrót, átadva a beviteli sor számát
Application.EnableEvents = True
End If
End SubSub Visszajelzes(sor) ' Itt nevet adhatunk a sorszámnak, nem feltétlen Target.Row legyen a változó neve
'...
End Sub -
Mutt
senior tag
válasz
TheSaint #44814 üzenetére
Szia,
Egy főtáblából szeretnék adott oszlopokat lekérdezni olyan módon hogy a sorok mellé szabadon lehessen megjegyzéseket irogatni és a főtábla változásakor a megjegyzés maradjon...
Megoldás lehet, hogy
1. a főtáblához is hozzáadjuk a gépelt megjegyzést vagy
2. egy segédtáblában tároljuk a megjegyzéséket a főtábla megfelelő sorára mutató azonosítóval együtt.MIndkét megoldás makrót igényel valószínű Worksheet Change eseményt használva.
Az első esetben a makrónak meg kell találnia a főtábla megfelelő sorát és oda átmásolni a megjegyzést.
A második esetben a makrónak egy új táblához kell hozzáfűznie a megjegyzést egy azonosítóval és ezek után a Power Query-vel lehet hozzáadni a riporthoz a megjegyzést.üdv
-
Louro
őstag
válasz
TheSaint #41541 üzenetére
A vezérhangya nem hagyott békén, így lett egy kicsit igényesebbnek tűnő megoldás.
Jelöld ki azt a tartományt, amit színezni szeretnél az első sort kihagyva. Az marad fehér.
Feltételes formázás (conditional formatting), majd a legalsó és New Rule és legalsót válaszd.A képlet: =OR(AND($E1=$E2;CELL("color";$E1)=1);AND($E1<>$E2);CELL("color";$E1)=0))
Majd válasz egy színt a Format alatt lévő Fill fül alatt. Végén maradnak az Ok-Ok.
Mit is csinál a képlet:
Amennyiben megegyezik a két azonosító és az első formázott (színezett), akkor beszínezi. Ha nem egyezik meg az előtte lévővel és az előtte lévő nincs színezve, beszínezi.Így segédoszlop nélkül megúszható
Kipróbáltam is.
-
Louro
őstag
válasz
TheSaint #41535 üzenetére
Lehet gagyi lesz, de 10 másodperc alatt azt mondanám, hogy F oszlopba egy sorszám, ami így nézne ki:
F1: 1
F2 és alatta: =IF(E2=E1;F1;F1+1)Majd erre dobnék egy feltételes formázást úgy, hogy a sorokat színezze aszerint, hogy páros vagy páratlan szám van az F oszlopban.
A feltételes formázásnál saját képletet használnék: =MOD(F1;2)=0, a formátumnál meg a színt kiválasztanám.
-
Louro
őstag
válasz
TheSaint #27021 üzenetére
Megnyitásmentességhez: [link]
A változóhoz:
Dim pathname, filename as stringpathname = "C:\valami\mégvalamibb\ez nem semmi\"
filename = "ez a legjobb fájl a világon.xlsxxx"A fájlnevet ciklussal is generálhatod.
for i=10000 to 10500 step 5
filename = "királyságos_" & i & ".xlsxxx"
nextCsak akkor a fájlműveleteket is a ciklusba tedd
Különben csak a legutolsóval fog dolgozni.
Remélem tudtam segíteni.
Új hozzászólás Aktív témák
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap
- Azonnali kézbesítés az év bármely pillanatában
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Bomba ár! Lenovo ThinkPad L13 G3 - i5-1245U I 16GB I 256SSD I 13,3" FHD Touch I NBD Gari!
- Amazfit GTR Mini okosóra / Számla / Garancia /
- Apple iPhone 12 / 64GB / Gyári független / 12 Hó Garanciával / 100% akku
- Bomba ár! HP EliteBook 830 G5 - i5-8G I 8GB I 256GB SSD I 13,3" FHD I HDMI I Cam I W11 I Gari!
- HIBÁTLAN iPhone 13 Pro 128GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3025
Állásajánlatok
Cég: FOTC
Város: Budapest