12. januar 2010 - 13:23Der er
6 kommentarer og 1 løsning
Opsplitning af én kolonne til flere i Excel
Hejsa,
Jeg har en kolonne der indeholder lange tekst strenge. Denne kolonne vil jeg gerne have splittet op i flere kolonner på f.eks. 70 tegn.
Så det jeg er ude efter, er en macro/funktion der kan finde det sidste mellemrum før tegn 70 og flytte denne substreng til f.eks kolonne B. Den resterende streng skal derefter igen udsøges for sidste mellemrum før tegn 70 og substrengen flyttes til kolonne C. Dette skal fortsætte til den oprindelige streng er tom.
Er der nogen der har en idé til hvordan dette gøres?
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
While Len(tekstA) > maxTegn For ix = maxTegn To 1 Step -1 If Mid(tekstA, ix, 1) = " " Then tekstDel = Left(tekstA, ix) Cells(ræk, kolNr) = tekstDel tekstA = Mid(tekstA, ix + 1) kolNr = kolNr + 1 Exit For End If Next ix Wend Next ræk
Sub DelOp() kol = 1 rk = Cells(65500, 1).End(xlUp).Row For t = 1 To rk x = Cells(t, 1) While x <> "" kol = kol + 1 stk = InStrRev(Left(x, 70), " ", -1, vbTextCompare) If stk = 0 Or Len(x) < 70 Then y = Left(x, 70) Else y = Left(x, stk) x = Replace(x, y, "") Cells(t, kol) = y Wend kol = 1 Next End Sub
While Len(tekstA) > maxTegn For ix = maxTegn To 1 Step -1 If Mid(tekstA, ix, 1) = " " Then tekstDel = Left(tekstA, ix) Cells(ræk, kolNr) = tekstDel tekstA = Mid(tekstA, ix + 1) kolNr = kolNr + 1 Exit For End If Next ix Wend
If Len(tekstA) > 0 Then Cells(ræk, kolNr) = tekstA End If Next ræk
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.