Hirdetés
- Mobil flották
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- 8000 nit, maradhat? A szaúdiaknál kezd a Honor 600 Pro
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Óra vagy karperec? Egészségügyi mindenes!
- Samsung Galaxy S26 Ultra - fontossági sorrend
- Xiaomi 14 - párátlanul jó lehetne
- Xiaomi 15T Pro - a téma nincs lezárva
- Szívós, szép és kitartó az új OnePlus óra
- Fotók, videók mobillal
-
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
Zomb€€
#10180
üzenetére
Kértem, hogy tegyél be képet. Mivel nem tettél, a saját elképzelésem szerint írtam meg a makrót, majd átalakítod kedved (és az adataid) szerint.
Az egyik lap neve Oktatás, ahol az A oszlop tartalmazza a szak kódját, a B oszlop a szakra jelentkező nevét.
A másik lap Jelentkezők névre hallgat, ahol az A oszlopban van a név, a B:F oszlopokban a hozzájuk tartozó többi adat.
A harmadik lap az Összesítés, itt az A oszlopban lesz a kód, B-ben a jelentkező neve, a C:G tartományban a jelentkező többi adata.
Szerencsére azt tudom, hogy a 2007-es verziót használod. Nem mindegy, mert egészen más a rendezés a különböző verziókban.
Sub Adategyesítés()
Dim sorA%, usorA%, sorV%, usorV%, sorO%
Dim kód$, név$, adatSor%
Dim WSJ As Object, WSO As Object
Sheets("Oktatás").Select
usorA% = Range("A60000").End(xlUp).Row
'"A" oszlop rendezése
usorA% = Range("A60000").End(xlUp).Row
ActiveWorkbook.Worksheets("Oktatás").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Oktatás").Sort.SortFields.Add Key:=Range("A2"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Oktatás").Sort
.SetRange Range("A2:B" & usorA%)
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
'Egyedi rekordok szűrése a V oszlopba
Range("A1:A" & usorA%).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range( _
"V1"), Unique:=True
Set WSJ = Sheets("Jelentkezők")
Set WSO = Sheets("Összesítés")
usorV% = Range("V60000").End(xlUp).Row
sorO% = 2
For sorV% = 2 To usorV%
kód$ = Cells(sorV%, 22)
For sorA% = 2 To usorA%
If Cells(sorA%, 1) = kód$ Then
név$ = Cells(sorA%, 2)
WSO.Cells(sorO%, 1) = kód$
adatSor% = WSJ.Range("A:A").Find(név$).Row
WSO.Cells(sorO%, 2) = WSJ.Cells(adatSor%, 1)
WSO.Cells(sorO%, 3) = WSJ.Cells(adatSor%, 2)
WSO.Cells(sorO%, 4) = WSJ.Cells(adatSor%, 3)
WSO.Cells(sorO%, 5) = WSJ.Cells(adatSor%, 4)
WSO.Cells(sorO%, 6) = WSJ.Cells(adatSor%, 5)
WSO.Cells(sorO%, 7) = WSJ.Cells(adatSor%, 6)
sorO% = sorO% + 1
End If
Next
Next sorV%
End Sub -
Cuci3
tag
válasz
Zomb€€
#10180
üzenetére
Ha jól értem: a 2. tábla a nagy (oktatás), az 1. tábla a kisebb (jelentkezők). Én is fkeressel oldanám meg, persze ügyelve, hogy a kulcsok ugyanolyan formátumban legyenek. És az eljársát kicsit gyorsítja, ha a 2. táblához hozzákapcsolandó 15 oszlopra nem egyszerre futtatod le az fkerest, hanem 1-2 oszloponként, majd értékként beilleszted (praktikus az első sort megtartani a képlet miatt).
Új hozzászólás Aktív témák
- Mobil flották
- A fociról könnyedén, egy baráti társaságban
- exHWSW - Értünk mindenhez IS
- Linux kezdőknek
- E-roller topik
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- 8000 nit, maradhat? A szaúdiaknál kezd a Honor 600 Pro
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Milyen billentyűzetet vegyek?
- sziku69: Fűzzük össze a szavakat :)
- További aktív témák...
- Gamer PC - Számítógép // i7 // GTX 1060 // Számla // Garancia //
- Apple iPhone 14 Pro Max / 128GB / Kártyafüggetlen / 12Hó Garancia / Akku: 87%
- GYÖNYÖRŰ iPhone 14 Pro 128GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen, MS4022
- Apple iPhone 15 Pro Max Blue Titanium 512GB használt karcmentes 100% akku 6 hónap garancia
- Vásárlunk iPhone 12/12 Mini/12 Pro/12 Pro Max
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Fferi50
