- Xiaomi 14T - nem baj, hogy nem Pro
- Motorola Razr 60 Ultra - ez a kagyló könnyen megfő
- Apple iPhone 16 Pro - rutinvizsga
- iPhone topik
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Az Oppo Find X8 Ultra lett a legvékonyabb kameramobil
- Apple Watch
- Honor Magic7 Pro - kifinomult, költséges képalkotás
- Íme az új Android Auto!
- Samsung Galaxy S20 és S20+ duplateszt
-
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
-
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
Hirdetés
- OLED TV topic
- Xiaomi 14T - nem baj, hogy nem Pro
- Motorola Razr 60 Ultra - ez a kagyló könnyen megfő
- Apple iPhone 16 Pro - rutinvizsga
- Synology NAS
- One otthoni szolgáltatások (TV, internet, telefon)
- Revolut
- iPhone topik
- Mielőbb díjat rakatnának a görögök az olcsó csomagokra az EU-ban
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- További aktív témák...
- Windows 10/11 Home/Pro , Office 2024 kulcsok
- Új, bontatlan World of Warcraft gyűjtői kiadások
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - NYÁRI AKCIÓ!
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Csere-Beszámítás! PowerColor Red Devil Spectral White RX 9070XT Videokártya! Bemutató Darab!
- LG 48C2 - 48" OLED EVO - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - A9 Gen5 CPU
- Lenovo Legion 5 Gaming. Az ár irányár, komoly érdeklődés esetén van lehetőség egyeztetésre
- BESZÁMÍTÁS! MSI B550M R7 3700X 16GB DDR4 512GB SSD RTX 3060Ti 8GB NZXT H5 Flow RGB 650W
- AKCIÓ! MSI B550 R7 5700X 32GB DDR4 512GB SSD RTX 3060Ti 8GB Rampage SHIVA MSI 650W
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest