ich habe in einer Tabelle in einer Spalte jeweils nur Strassennamen, die teilweise mit str., str oder auch mit strasse enden. Gibt es eine Möglichkeit, dass alle Strassen mit der Endung "straße" enden?
Danke im Voraus
Gruß
Jürgen
A | B | |
1 | Erste Hofstr. nach JWD | Erste Hofstraße nach JWD |
2 | Zweite Hofstr nach JWD | Zweite Hofstraße nach JWD |
3 | Dritte Hofstrasse nach JWD | Dritte Hofstraße nach JWD |
4 | Poetenweg | Poetenweg |
5 | Str. der dt. Einheit | Straße der dt. Einheit |
6 | Erste Hofstr. | Erste Hofstraße |
7 | Zweite Hofstr | Zweite Hofstraße |
8 | Dritte Hofstrasse | Dritte Hofstraße |
9 | 1. Hofstrasse | 1. Hofstraße |
10 | August-Bebel-Str. | August-Bebel-Straße |
11 | Krawinkel | Krawinkel |
12 | Strasse der dt. Einheit | Straße der dt. Einheit |
13 | Einbahnstr | Einbahnstraße |
14 | Einbahnstrasse | Einbahnstraße |
15 | Einbahnstr. | Einbahnstraße |
Formeln der Tabelle | ||||
|
Public Sub Strassen_Namen()
Dim lZeile As Long
Dim sTemp As String
Application.ScreenUpdating = False
With Worksheets("Tabelle1")
For lZeile = 1 To Range("C65536").End(xlUp).Row
.Range("C" & lZeile).Value = _
Replace(.Range("C" & lZeile).Value, "str.", "straße")
.Range("C" & lZeile).Value = _
Replace(.Range("C" & lZeile).Value, "Str.", "Straße")
.Range("C" & lZeile).Value = _
Replace(.Range("C" & lZeile).Value, "strasse", "straße")
.Range("C" & lZeile).Value = _
Replace(.Range("C" & lZeile).Value, "Strasse", "Straße")
sTemp = .Range("C" & lZeile).Value & " "
If InStr(sTemp, "str ") > 0 Then
.Range("C" & lZeile).Value = Replace(sTemp, "str ", "straße")
ElseIf InStr(sTemp, "Str ") > 0 Then
.Range("C" & lZeile).Value = Replace(sTemp, "Str ", "Straße")
End If
Next lZeile
End With
Application.ScreenUpdating = True
End Sub
Gruß PeterUm alle Strassennamen in einer Excel-Tabelle so zu formatieren, dass sie mit "straße" enden, kannst du ein einfaches Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:
Öffne Excel und lade die Tabelle, die die Strassennamen enthält.
Drücke ALT + F11
, um den VBA-Editor zu öffnen.
Füge ein neues Modul hinzu:
Einfügen
> Modul
.Kopiere den folgenden Code in das Modul:
Public Sub Strassen_Namen()
Dim lZeile As Long
Dim sTemp As String
Application.ScreenUpdating = False
With Worksheets("Tabelle1")
For lZeile = 1 To Range("C65536").End(xlUp).Row
.Range("C" & lZeile).Value = _
Replace(.Range("C" & lZeile).Value, "str.", "straße")
.Range("C" & lZeile).Value = _
Replace(.Range("C" & lZeile).Value, "Str.", "Straße")
.Range("C" & lZeile).Value = _
Replace(.Range("C" & lZeile).Value, "strasse", "straße")
.Range("C" & lZeile).Value = _
Replace(.Range("C" & lZeile).Value, "Strasse", "Straße")
sTemp = .Range("C" & lZeile).Value & " "
If InStr(sTemp, "str ") > 0 Then
.Range("C" & lZeile).Value = _
Replace(sTemp, "str ", "straße")
ElseIf InStr(sTemp, "Str ") > 0 Then
.Range("C" & lZeile).Value = _
Replace(sTemp, "Str ", "Straße")
End If
Next lZeile
End With
Application.ScreenUpdating = True
End Sub
Schließe den VBA-Editor und gehe zurück zu Excel.
Führe das Makro aus:
ALT + F8
, wähle Strassen_Namen
aus und klicke auf Ausführen
.Das Makro wird alle Strassennamen in der Spalte C von "Tabelle1" entsprechend anpassen.
Falls du kein Makro verwenden möchtest, kannst du auch folgende Alternativen ausprobieren:
Formel verwenden: Du kannst eine Formel in einer neuen Spalte anwenden:
=WENN(ISTZAHL(FINDEN("Strasse";A1));WECHSELN(A1;"Strasse";"Straße");WENN(ISTZAHL(FINDEN("Str." ;A1));WECHSELN(A1;"Str.";"Straße");WENN(ISTZAHL(FINDEN("str";A1));WECHSELN(A1;"str";"straße");A1)))
Suchen und Ersetzen: Nutze STRG + H
, um "str." durch "straße" zu ersetzen, aber sei vorsichtig, dass du nur am Ende der Strassennamen suchst.
Hier sind einige Beispiele, wie die genannten Methoden angewendet werden können:
Originalname | Ergebnisname |
---|---|
Erste Hofstr. | Erste Hofstraße |
Zweite Hofstr nach JWD | Zweite Hofstraße nach JWD |
Dritte Hofstrasse nach JWD | Dritte Hofstraße nach JWD |
Str. der dt. Einheit | Straße der dt. Einheit |
Einbahnstr. | Einbahnstraße |
Du kannst die Formeln nutzen, um die korrekten Strassennamen in einer neuen Spalte zu generieren und dann die Werte zurück in die Originalspalte kopieren.
1. Wie kann ich das Makro anpassen, wenn die Straßennamen in einer anderen Spalte stehen?
Du musst einfach die Spalte im Code ändern. Ersetze "C"
durch die entsprechende Spaltenbezeichnung.
2. Was ist, wenn ich mehr Varianten der Endungen habe?
Du kannst weitere Replace
-Funktionen im Makro hinzufügen, um zusätzliche Endungen zu berücksichtigen. Achte darauf, die Logik beizubehalten, um nur das Ende der Namen zu beeinflussen.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen