03. december 2008 - 11:36
Der er
3 kommentarer og
1 løsning
Opdeling af celler 2
Hejsa
Jeg har været så heldig at en af jer kloge hoveder har skrevet nedenstående makro for mig.
Den splitter en adresse op
F.eks Albertlundsvej 127 st.tv splittes op i
Kolonne f: Albertlundsvej
Kolonne g: 127
kolonne h: st.tv
Og det fungerer noget nært perfekt.
Men når den skal skille en adresse som f.eks syrenkæden 23
Så kommer den til at se sådanne ud
kolonne f: Syrenkæden
Kolonne g: "blank"
Kolonne h: "blank"
Hvilket vil sige at den "glemer" at flytte hus nummer også?
Nogen som kan fortage ændringen sådan lige med et snuptag ;o)
Sub AdrTilKol()
For Each c In Range("e2:e4000").Cells
If Not IsEmpty(c.Value) Then
adr = c.Value
For i = 1 To Len(adr)
If IsNumeric(Mid(adr, i, 1)) Then
vej = Mid(adr, 1, i - 1)
Exit For
End If
rest = Mid(adr, i + 1, Len(adr))
For h = 1 To Len(rest)
If Not IsNumeric(Mid(rest, h, 1)) Then
husnr = Mid(rest, 1, h - 1)
Exit For
End If
Next h
sidst = Mid(rest, h, Len(rest))
Next i
End If
c.Offset(0, 1).Value = vej
c.Offset(0, 2).Value = husnr
c.Offset(0, 3).Value = sidst
Next c
End Sub
Hilsen
Ida
Som syntes at eksperten er et supert værktøj til
03. december 2008 - 12:56
#1
Prøv med denne version:
Sub AdrTilKol()
For Each c In Range("e10:e12").Cells
If Not IsEmpty(c.Value) Then
adr = c.Value
If InStr(adr, " ") = InStrRev(adr, " ") And IsNumeric(InStr(adr, " ") + 1) Then
vej = Mid(adr, 1, InStr(adr, " "))
husnr = Mid(c.Value, InStr(c.Value, " ") + 1, Len(adr))
GoTo skriv
End If
For i = 1 To Len(adr)
If IsNumeric(Mid(adr, i, 1)) Then
vej = Mid(adr, 1, i - 1)
Exit For
End If
rest = Mid(adr, i + 1, Len(adr))
For h = 1 To Len(rest)
If Not IsNumeric(Mid(rest, h, 1)) Then
husnr = Mid(rest, 1, h - 1)
Exit For
End If
Next h
sidst = Mid(rest, h, Len(rest))
Next i
End If
skriv:
c.Offset(0, 1).Value = vej
c.Offset(0, 2).Value = husnr
c.Offset(0, 3).Value = sidst
Next c
End Sub
Det er ikek sikkert, den dækker alle varianter for så vidt jeg husker kunne der forekomme mange forskellige med og uden mellemrum.
03. december 2008 - 13:30
#2
det er rigtigt der kunne komme mange varianter - men den første ramte faktisk temmelig plet fra starten af - det var ikke meget som jeg selv skulle kigge på - altså bortset fra det med "kun husnummer"
Fedt at du gad hjælpe.
smider du lige et par svar begge steder??