Avatar billede pedereg Juniormester
28. januar 2018 - 15:55 Der er 1 kommentar og
1 løsning

Spitning af tekst i ét felt til flere felter

Har denne tekststreng i A1 henholdsvis A2

Kongensgade 9, 3. tv. 6700  Esbjerg
Stormgade 676710  Esbjerg V

som jeg ønsker opdelt således det står således i
B1                                      C1                D1
Kongensgade 9, 3. tv.        6700            Esbjerg
Stormgade 67                    6710            Esbjerg V

Tekstfunktionerne i Excel løser ikke umiddelbart en sådan opgave - der må én eller anden VBA-kode til?
Avatar billede jens48 Ekspert
28. januar 2018 - 16:18 #1
Noget i stil med dette vil kunne klare det. Den søger først 4 sammenhængende tal for at finde postnummeret, og bruger så postnummerets position til at skille det ad

Sub Split()
LastRow = ActiveSheet.UsedRange.Rows.Count
For x = 1 To LastRow
y = Len(Cells(x, 1))
For Z = 1 To y
If IsNumeric(Mid(Cells(x, 1), Z, 4)) Then
Cells(x, 2) = Left(Cells(x, 1), Z - 4)
Cells(x, 3) = Mid(Cells(x, 1), Z - 2, 4)
Cells(x, 4) = Mid(Cells(x, 1), Z + 4, 999)
End If
Next
Next
End Sub
Avatar billede excelent Ekspert
28. januar 2018 - 16:48 #2
Sub SplitAdr()

x0 = InStrRev(ActiveCell.Value, 0)
x1 = InStrRev(ActiveCell.Value, 1)
x2 = InStrRev(ActiveCell.Value, 2)
x3 = InStrRev(ActiveCell.Value, 3)
x4 = InStrRev(ActiveCell.Value, 4)
x5 = InStrRev(ActiveCell.Value, 5)
x6 = InStrRev(ActiveCell.Value, 6)
x7 = InStrRev(ActiveCell.Value, 7)
x8 = InStrRev(ActiveCell.Value, 8)
x9 = InStrRev(ActiveCell.Value, 9)
x = Application.WorksheetFunction.Max(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9) - 3

Post = Mid(ActiveCell, x, 4)
by = Mid(ActiveCell, x + 4, 99)
gade = Replace(Replace(ActiveCell, Post, ""), by, "")
ActiveCell.Offset(0, 1) = gade
ActiveCell.Offset(0, 2) = Post
ActiveCell.Offset(0, 3) = by
ActiveCell.Offset(1, 0).Select

End Sub
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester