-
Fototrend
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
FehérHolló
#3633
üzenetére
Kipróbáltam. Ha meghagyod az eredeti Range("I" & Target.Columns).Select-et a
Cells(Target.Row, 9).Select helyett, akkor hiba nélkül működik.Akkor most véletlenül kiderült, hogy a formai különbségnek látszó eltérés a működésben is mást eredményt ad.
Jó szórakozást!
-
Delila_1
veterán
válasz
FehérHolló
#3628
üzenetére
Itt egy kis makró, ami a fájl bezárásakor rákérdez a rendezésre (I oszlop szerint):
Sub auto_close()
If MsgBox("Akarod rendezni mentés előtt az adatokat?", vbYesNo) = vbYes Then
Range("I2").Select
Selection.Sort Key1:=Range("I2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End If
ActiveWorkbook.Save
End SubFontos, hogy auto_close legyen a neve, mert akkor automatikusan végrehajtódik záráskor.
Ha még ugyanarról a fájlról van szó, amelyikben B:G oszlopokban van adat, és I-be íródik a dátum, akkor gondoskodni kell a H oszlop kitöltéséről, hogy a rendezésbe belevegye az előző oszlopokat is. Ha üres oszlop van közöttük, csak az I oszlopot rendezi.
A H-ba, ha egyébként nem lenne ott adat, a targetes makróval íratunk egy pontot. Az
If (Target.Column >1 kezdetű sor után írd be:
Cells(8,Target.Column)="."Ha nincs fejléced, a Header:=xlGuess-t javítsd át Header:=xlNo-ra.
-
Delila_1
veterán
válasz
FehérHolló
#3626
üzenetére
Látom, egy kulcs szerint akarsz rendezni. Szerintem sem érdemes makrót futtatni, a kulcsot képező oszlopban állva egyetlen kattintás, és kész, ki sem kell jelölni a táblát.
Legfeljebb zárás előtt egy inputboxban (vagy msgboxban) rákérdezel, hogy akar-e rendezni, és igen esetén egyszer lefuttatni. -
lapa
veterán
válasz
FehérHolló
#3626
üzenetére
próbáld meg kétdimenziós tömbbe (array) rakni, korábban volt róla szó. utána azon futhat le a két for-next. nagyjából két nagyságrenddel meggyorsítja.
-
Delila_1
veterán
válasz
FehérHolló
#3619
üzenetére
Függvény nincs rá, rögzíts makróban egy sorbarendezést, és azt vesézd ki.
-
FehérHolló
veterán
válasz
FehérHolló
#3617
üzenetére
Megoldva. Cells(CurrRow, CurrCol).Select.

(Változóknak van érték adva.)Sorba rendezés milyen függvénnyel megy? Kezdek belemelegedni.

-
Delila_1
veterán
válasz
FehérHolló
#3614
üzenetére
A #3600-nál azt mondtad, hogy tökéletesen működik. Másik gépen nem megy?
-
Delila_1
veterán
válasz
FehérHolló
#3614
üzenetére
A "Nem tudom"-ot? Nagyon szívesen, máskor is.

-
Delila_1
veterán
válasz
FehérHolló
#3611
üzenetére
Nem tudom.

-
Delila_1
veterán
válasz
FehérHolló
#3602
üzenetére
Az Eszközök/Bővítménykezelőben kapcsold be az Analysis ToolPak-ot és az Analysis ToolPak-VBA-t. Az első egy halom új függvényt ad, amiket a munkalapodon alkalmazhatsz, a másik ugyanezt adja a VBA felületen, amiktől értelmezhetővé válnak a makrók utasításai az Excel számára.
-
Delila_1
veterán
válasz
FehérHolló
#3600
üzenetére
Szívesen.
-
Delila_1
veterán
válasz
FehérHolló
#3597
üzenetére
Ez, a laphoz rendelve azt csinálja.
Sub Worksheet_Change(ByVal Target As Excel.Range)
If (Target.Column > 1 And Target.Column < 8) Then
Range("I" & Target.Row).Select
ActiveCell.FormulaR1C1 = "= TODAY()"
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone
Application.CutCopyMode = False
End If
End Sub -
Delila_1
veterán
válasz
FehérHolló
#3577
üzenetére
Sub Worksheet_Change(ByVal Target As Excel.Range)
If (Target.Column > 3 And Target.Column < 8 And Target.Row < 11) Then
Range("A1").Select
ActiveCell.FormulaR1C1 = "= TODAY()"
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone
Application.CutCopyMode = False
End If
End SubEz a kis makró a munkalaphoz rendelve (lapfülön jobb klikk, kód megjelenítése, VBE-ben a jobb oldalon kapott üres lapra másolva) azt csinálja, hogy ha a D1:G10 tartományban módosul az adat, az A1-be beírja az aktuális dátumot a MA() függvénnyel, és rögtön át is írja a függvényt az értékére.
-
Delila_1
veterán
válasz
FehérHolló
#3577
üzenetére
Targettel kellene megoldani, a laphoz rendelt makróval.
Új hozzászólás Aktív témák
- Game Pass Ultimate előfizetések 1 - 36 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN! AKCIÓ!
- MEGA AKCIÓ! - Jogtiszta Windows - Office & Autodesk & CorelDRAW - Azonnal - Számlával - Garanciával
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Játékkulcsok ! : PC Steam, EA App, Ubisoft, Windows és egyéb játékok
- MSI 14 Modern C12M FHD IPS i7-1255U 10mag 16GB 512GB SSD Intel Iris XE Graphics Win11 Garancia
- Gamer PC-Számítógép! Csere-Beszámítás! I3 14100F / RTX 3070 8GB / 16GB DDR4 / 512 Nvme SSD
- Creality HALOT ONE gyantás nyomtató
- PC konfig /Ryzen 7 9800X3D, 32GB RAM, 1TB SSD/ akciós áron eladó!
- AKCIÓ! LENOVO ThinkPad P15 Gen2 munkaállomás - i7 11800H 64GB DDR4 1TB SSD RTX A2000 4GB W
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest



Fferi50