- hcl: Samsung S21FE pakolás
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- Luck Dragon: Asszociációs játék. :)
- gerner1
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- mefistofeles: Az elhízás nem akaratgyengeség! 2 Ahogy én csinálom.......
- norbx: IRC a 90-es évek és a 2000-es évek elején
- Flashback: Olcsó emulátoros kézikonzol: R36S
- horzoli: Auchan házhozszállítás
- Gurulunk, WAZE?!
-
LOGOUT
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
-
Mutt
senior tag
válasz
Salex1
#48995
üzenetére
Szia,
Itt az én változatom a felosztásra:
Sub Atrendez()
Dim wsCel As Worksheet
Dim adatok, bont, aktualis()
Dim c As Long, i As Long
Dim oszlopok As Long, oszlopBont As Long
Dim sor As Long
Dim ertekek As String
'erre a munkalapra másoljuk az értékeket
Const cel = "Munka2"
'ezen nevú oszlopot kell sorokba bontani
Const bontani = "AH"
'a fenti oszlopnevet számmá alaktjuk
oszlopBont = Cells(1, bontani).Column
'beolvassuk a teljes adatsort
adatok = ActiveSheet.Range("A1").CurrentRegion
oszlopok = UBound(adatok, 2)
'cél munkalap beállítása
Set wsCel = Worksheets(cel)
'esetleg létező adatok törlése a cél munkalapról
wsCel.Cells.Clear
'erre szükség lehet a 11ezer sor kiírásakor
Application.ScreenUpdating = False
sor = 1
'végig megyünk a beolvasott adatokon
With wsCel
For c = 1 To UBound(adatok)
'egy átmeneti tömbbe (aktualis) beolvassuk az adatokat soronként
ReDim aktualis(1 To oszlopok)
For i = 1 To oszlopok
aktualis(i) = adatok(c, i)
Next i
'a bontani kívánt oszlopot feldolgozzuk, előtte levesszük a [ és ] jeleket
ertekek = Replace(Replace(aktualis(oszlopBont), "[", ""), "]", "")
bont = Split(ertekek, "','")
'ha üres volt a bontani kívánt érték akkor csak 1 sort kell írnunk
If UBound(bont) < 0 Then
.Cells(sor, 1).Resize(, oszlopok) = aktualis
sor = sor + 1
Else
'ha nem volt üres akkor visszont ismételni kell egymás után a dolgokat
For i = 0 To UBound(bont)
.Cells(sor, 1).Resize(, oszlopok) = aktualis
.Cells(sor, oszlopBont) = Replace(bont(i), "'", "")
sor = sor + 1
Next i
End If
Next c
End With
Application.ScreenUpdating = True
End Subüdv
Új hozzászólás Aktív témák
- Crimson Desert - Fókuszban a szinkronhangok
- Fejhallgató erősítő és DAC topik
- Kávé kezdőknek - amatőr koffeinisták anonim klubja
- exHWSW - Értünk mindenhez IS
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Samsung Galaxy S25 - végre van kicsi!
- Gumi és felni topik
- Formula-1
- OTP Bank topic
- One mobilszolgáltatások
- További aktív témák...
- Windows 10/11 Home/Pro , Office 2024 kulcsok
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Játékkulcsok ! : PC Steam, EA App, Ubisoft, Windows és egyéb játékok
- BESZÁMÍTÁS! ASUS H110M i3 6100T 8GB DDR4 250GB SSD GTX 1050 Ti 4GB Kolink Inspire K2 aRGB 400W
- Bomba ár! Dell Latitude 7290 - i5-7GEN I 8GB I 256GB SSD I 12,5" HD I HDMI I Cam I W11 I Gari!
- iPhone 11 Pro 256GB 100% (3Hónap Garancia) - AKCIÓ
- Gamer PC-Számítógép! Csere-Beszámítás! R7 5700 / RTX 2080Ti 11GB / 16GB DDR4 / 1TB SSD!
- BESZÁMÍTÁS! Gigabyte Z390 i7 9700K 16GB DDR4 512GB SSD RX 6600 8GB Rampage SHIVA FSP 550W
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Fferi50