-
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
-
válasz
bnorci71
#10528
üzenetére
Mint írtam nem olvastam vissza és az üres sort is csak példának hoztam. Ezzel a sorral van gond
Set lel = .Find(Cells(sor%, "E"), LookIn:=xlValues)
Ha tudod ez mit is csinál(bízom benne, hogy tudod, nem csak úgy bemásolgatod a makrókat, anélkül, hogy ismernéd a működését), akkor hasonlítsd össze a 41.sort az előzőekkel, és remélhetőleg rájössz, hogy az miben különbözik az előző soroktól...
-
válasz
bnorci71
#10526
üzenetére
A macro-ban nincs hibakezelés, mert azt feltételezi, hogy minden vizsgálat esetén megtalálja a keresett értéket. Ezek szerint nem, azaz van olyan sorod/cellád, amiben nem lehet megtalálni. Nem olvastam vissza, de feltételezem nem jelezted Delila_1 felé, hogy pl üres sorok/cellák is vannak...
cellpeti
Kezdőknek és egyből 2010 ez az, amit javasolni tudok (nem Magyar) -
Delila_1
veterán
válasz
bnorci71
#10520
üzenetére
Írtam hozzá egy makrót, amit az excel1.xls füzetedhez másolj be.
Alt+F11-re bejön a VB szerkesztő. Bal oldalon kiválasztod az excel1-et, Insert menü, Module.
Jobb oldalon kapsz egy üres lapot, oda másold.Ha nem excel1 és excel2 a füzeteid neve, írd át a saját neveidre. Ugyanúgy a Munka1 lap nevét is, ha nálad más a lapok neve. Mindegyik füzet neve egyszer szerepel a makróban, a hozzá tartozó Munka1 lappal egy sorban.
A makró futtatásakor legyen mindkét füzeted nyitva.Sub kieg()
Dim sor%, usor%, lel, sor_lel%, WS As Object
Workbooks("excel1.xls").Sheets("Munka1").Activate
usor% = Range("C60000").End(xlUp).Row
Set WS = Workbooks("excel2.xls").Sheets("Munka1")
For sor% = 2 To usor%
With WS.Columns("I:I")
Set lel = .Find(Cells(sor%, "E"), LookIn:=xlValues)
sor_lel% = lel.Row
If Not lel Is Nothing And WS.Cells(sor_lel%, "D") > "" Then
Cells(sor%, "C") = Cells(sor%, "C") & ". " & WS.Cells(sor_lel%, "D")
End If
End With
Next
End Sub -
Delila_1
veterán
válasz
bnorci71
#10498
üzenetére
Az adatok az A1-ben kezdődnek mindkét fájlban, vagy máshol, azonos sorokban, vagy nem?
Az excel1 első sora azonos az excel2 első sorával, vagy az excel2 első sora már tartalmazza a plusz adatokat? Az excel2-ben az emelet és ajtó a címmel azonos cellában szerepel, vagy külön? Ezek az adatok fontosak.Kicsit bőkezűbben bánhatnál a vesszőkkel, háromszor elolvastam az írásodat, mire úgy-ahogy megértettem, mi a lényeg. Talán csatolhatnál 2 képet a két fájl elrendezéséről.
Az sem mindegy, hogy az Excelnek melyik verzióját használod, írd meg.
-
Delila_1
veterán
válasz
bnorci71
#8252
üzenetére
Eszembe jutott valami, de megint csak este tudom kipróbálni. Érdekes feladat, biztosan más is próbálkozik addig a megoldással.
Hogy ne kelljen a lehetséges megoldóknak visszakeresni:
Az A2:A14 tartományban focicsapatok nevei vannak. A teljes tartomány címsorral együtt A1:AI14, ami az AI oszlop értékei szerint van csökkenő sorrendbe rendezve. Az AI változik, emellé kellenének a nyilak az AJ, vagy AK oszlopba. -
Delila_1
veterán
válasz
bnorci71
#8225
üzenetére
Tényleg elsiklottunk a régi kérdésed fölött.
A laphoz kell rendelned egy makrót -> lapfülön jobb klikk, Kód megjelenítése. A képernyő jobb oldalán kapott üres lapra másold be:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column < 28 And Target.Row >= 2 And Target.Row < 15 And _
Target.Column Mod 2 <> 0 Then
Range("A1:AI14").Sort Key1:=Range("AI2"), Order1:=xlDescending, Key2:= _
Range("AH2"), Order2:=xlDescending, Header:=xlYes, OrderCustom:=1, _
MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, _
DataOption2:=xlSortNormal
End If
End Sub -
perfag
aktív tag
válasz
bnorci71
#8225
üzenetére
Ötlet: makró rögzítéssel felveszed a sorba rendezést, valami ilyesmit kapsz:
With ActiveWorkbook.Worksheets("Munka1").Sort
.SetRange Range("E3:E7")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Elvileg az Apply elvégzi a melót, ha nem, akkor tegyél alá egy .Calculate metódust. -
-
válasz
bnorci71
#8110
üzenetére
Hali!
Kijelölöd a (képed alapján) A2 : AI14 cellákat, aztán Adatok/Sorbarendezés. Itt lesz olyan hogy Rendezze és Majd, ennek segítségével megadhatsz több oszlopot rendezési szempontnak. Esetedben elsődlegesnek a pontszám oszlopát, másodlagosnak meg a gólkülönbséget.
Végül is lehet elválasztani az eredményt, de itt talán nem célszerű, hisz 2 cellából könnyebb kiszámoltatni a gólkülönbséget például...
Arra gondolok, hogy (megint csak a képed alapján) az AH2 cellába beírod ezt a képletet és lemásolod ameddig kell.=HA(B2>C2;B2-C2;C2-B2)
Fire.
Új hozzászólás Aktív témák
- Linux kezdőknek
- Luck Dragon: Asszociációs játék. :)
- Nem lesz iPhone 19
- Telekom mobilszolgáltatások
- Automata kávégépek
- Notebook / laptop alkatrészek cseréje (processzor, RAM, HDD)
- sziku69: Szólánc.
- Milyen billentyűzetet vegyek?
- Kerékpárosok, bringások ide!
- sziku69: Fűzzük össze a szavakat :)
- További aktív témák...
- Új Asus 18 ROG WQXGA MiniLED 240Hz G-Sync i9-14900HX 32GB 2TB SSD Nvidia RTX 4090 16GB 175W Garancia
- Samsung Galaxy S23 128GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 15 Pro Max / 256GB / Kártyafüggetlen / 12 Hó Garancia / 98% akku
- Samsung Galaxy S23 Ultra / 8RAM 256GB / Gyárifüggetlen / 12 Hó Garancia
- Lenovo ThinkPad L14 G2 i5-1135G7 32GB 512GB 14" FHD 1 év garancia
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Promenade Publishing House Kft.
Város: Budapest


Fferi50
