Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
716to720
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
716to720
716to720
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Bestimmte Daten aus einer Zelle kopieren

Bestimmte Daten aus einer Zelle kopieren
14.01.2006 03:56:02
Roland
Hallo Leute,
ich hab eine Liste die ich bearbeiten muss.
In dieser Liste sind auch Adressen hinterlegt, und zwar in der Form z.B.:
Haupstr. 34 80888 München
Alte Fabrik 121 A 60978 Stuttgart/ Germany
usw.
Jetzt ist meine Frage ob man die PLZ und die Stadt da irgendwie per VBA ausschneiden kann und sie in eine andere Spalte schreiben kann. bisher muss ich es immer mit auschneiden und einfügen machen. Leider sind meine Listen sehr lang und es raubt einem den letzten Nerv.
Hatte mir das in der Art gedacht das das Makro drüberläuft von hinten testet ob irgendeine Zahl 5 Stellig ist und ab der Stelle sie dann in Spalte XY (selbe Zeile) reinschreibt.
Ich hoffe Ihr versteht mich was ich meine.
cu
Roland

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestimmte Daten aus einer Zelle kopieren
ransi
hallo roland
zumindest für die sache mit der zahl hab ich was:
Diesen code in ein standardmodul:


Option Explicit
Public Function splitzahl(zelle As Range) As String
Dim a As Variant
Dim i As Integer
a = split(zelle)
For i = 1 To UBound(a)
    If IsNumeric(a(i)) Then If Len(a(i)) = 5 Then splitzahl = a(i)
Next
End Function


benutzt wird er so:
Tabelle1
 AB
1Haupstr. 34 80888 München80888
2Alte Fabrik 121 A 60978 Stuttgart/ Germany60978
Formeln der Tabelle
B1 : =splitzahl(A1)
B2 : =splitzahl(A2)
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
ransi
Anzeige
AW: Bestimmte Daten aus einer Zelle kopieren
ransi
hallo roland
zumindest für die sache mit der zahl hab ich was:
Diesen code in ein standardmodul:


Option Explicit
Public Function splitzahl(zelle As Range) As String
Dim a As Variant
Dim i As Integer
a = split(zelle)
For i = 1 To UBound(a)
    If IsNumeric(a(i)) Then If Len(a(i)) = 5 Then splitzahl = a(i)
Next
End Function


benutzt wird er so:
Tabelle1
 AB
1Haupstr. 34 80888 München80888
2Alte Fabrik 121 A 60978 Stuttgart/ Germany60978
Formeln der Tabelle
B1 : =splitzahl(A1)
B2 : =splitzahl(A2)
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
ransi
Anzeige
AW: Bestimmte Daten aus einer Zelle kopieren
ransi
Hallo roland
für die städte gehts so:
Code ins selbe Modul wie eben.


Public Function splitstadt(zelle As Range)
    Dim a As Variant
    Dim i As Integer
a = split(zelle)
For i = 1 To UBound(a)
    If IsNumeric(a(i)) Then
        If Len(a(i)) = 5 Then
            splitstadt = Right(zelle, Len(zelle) - InStr(1, zelle, a(i)) - 5)
            Exit Function
        End If
    End If
Next
End Function


und aufruf so:
Tabelle1
 ABC
1Haupstr. 34 80888 München80888München
2Alte Fabrik 121 A 60978 Stuttgart/ Germany60978Stuttgart/ Germany
Formeln der Tabelle
B1 : =splitzahl(A1)
C1 : =splitstadt(A1)
B2 : =splitzahl(A2)
C2 : =splitstadt(A2)
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
ransi
Anzeige
AW: Bestimmte Daten aus einer Zelle kopieren
14.01.2006 10:21:31
Sigi
Hallo Roland,
ich hab' da eine VBA-Funktion gefunden, die dir in den meisten Fällen helfen sollte.
Den Rest musst du dann händisch nachbearbeiten. Ich hoffe du kannst trotz "VBA nein"
mit der Funktion umgehen. (Modul anlegen, Funktion aus Forum kopieren u. ins Modul
einfügen, in Excel mit dem Funktionsassistenen aufrufen)
Function TrennPLZOrt(Anschrift As String) As String Dim Txt As String Dim LandKZ As Variant Dim Zeichen As String Dim Pos As Long Dim i As Long Dim z As Long Application.Volatile If WorksheetFunction.IsText(Anschrift) Then LandKZ = Array("CH-", "NL-", "FL-", "DK-", "PL-", "TR-", "GR-", _ "D-", "A-", "F-", "I-", "B-", "L-", "P-", "E-", _ "N-", "S-", "H-", "R-") Anschrift = Trim(Anschrift) For i = 0 To 18 Pos = InStr(1, Anschrift, LandKZ(i)) If Pos > 0 Then If Len(LandKZ(i)) = 2 Then Txt = Right(Anschrift, Len(Anschrift) - Pos - 1) Else Txt = Right(Anschrift, Len(Anschrift) - Pos - 2) End If Exit For End If Next i If Pos = 0 Then For i = 1 To Len(Anschrift) Zeichen = Mid(Anschrift, i, 1) If Asc(Zeichen) > 47 And Asc(Zeichen) < 58 Then z = z + 1 Else z = 0 End If If z = 4 Then Txt = Right(Anschrift, Len(Anschrift) - i + 4) Exit For End If Next i End If Else Txt = "" End If TrennPLZOrt = Trim(Txt) End Function
Gruß
Sigi
Anzeige
AW: Bestimmte Daten aus einer Zelle kopieren
15.01.2006 01:33:38
Roland
Hallo Sigi,
hallo ransi,
vielen Dank für eure Vorschläge. Ich hab es jetzt getestet und was soll ich sagen.. ich bin begeistert von euren Vorschlägen. :) Hätte ich bloß früher hier nachgefragt.
Hab von beiden die Versionen im Einsatz. Habe auch Datenbanken mit ausländischen Adressen, und da habe ich die Version von Sigi benutzt, da es mit der Version von ransi nicht immer klar ist ob das Deutsche oder eine ausländische Adresse ist.
Aber wie gesagt , vielen vielen Dank für eure Mühe.
Gruß
Roland

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige