Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1172to1176
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
Inhaltsverzeichnis

Zoning of Canadian Postal Codes

Zoning of Canadian Postal Codes
PM
Schoenen Guten Tag,
Ich hoffe, es kann mir jemand mit einem Marco unter die Arme greifen:
ich arbeite gerade an einer Zonen Tabelle fuer Kanadische Postleitzahlen. Unten ist der link fuer ein sample. Die erste Spalte zeigt dabei auf, welche Postleitzahlen die Zone (zweite Spalte) umfasst. Die Kanadischen Postleitzahlen enthalten Zahlenund Buchstaben und laufen in Reihenfolge vom kleinsten zum Groessten. Ein Bsp habe ich unten aufgeschrieben. Zu erst wird der 3te Buchstabe durch buchstabiert, A-Z; dann der die Mittlere Zahl von 0-9, dann der erste buchstabe.
Ich moechte gerne die erste Spalte ausbrechen und jeden Postleitzahl in eine Zeile schreiben. Jeweils mit der dazugehoerigen Zone.
1. spalte - 2. spalte
A0A - 3
A0B - 3
A0C - 3
A0D - 3
....
...
..
.
A1A - 1
A1B - 1
A1C - 1
sample datei.
https://www.herber.de/bbs/user/71331.xlsx
Vielen Dank!
Gruss
PM

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zoning of Canadian Postal Codes
01.09.2010 00:40:16
fcs
Hallo PM,
hier ein entsprechendes Makro das die Liste erzeugt.
Makro im VBA-Editor in ein allgemeines Modul kopieren.
Tabellenblatt mit deiner Liste im Excel-Programmfenster auswählen. Dann Makro starten. Makro legt für die Liste ein neues Tabellenblatt an.
Gruß
Franz
Sub CANADA_ZIP_Codes()
Dim wksQ As Worksheet, wksZiel As Worksheet
Dim ZeileQ As Long, ZeileZ As Long
Dim vZone, SpalteOrigin As Long
Dim sOrigin1 As String, sOrigin2 As String
Set wksQ = ActiveSheet 'Blatt in dem die Tabelle mit den Datensteht
'Neues Blatt für Liste einfügen
Set wksZiel = Worksheets.Add(after:=ActiveSheet)
With wksZiel
'Titelzeile beschriften
ZeileZ = 1
.Cells(ZeileZ, 1) = "ZIP-Code"
.Cells(ZeileZ, 2) = "Zone"
End With
With wksQ
'Zeilen der Quelle abarbeiten
For ZeileQ = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
sOrigin1 = Left(.Cells(ZeileQ, 1), 3)
sOrigin2 = Mid(.Cells(ZeileQ, 1), 5)
vZone = .Cells(ZeileQ, 2)
With wksZiel
'Zeile pro ZIP-Code erstellen, zur Zählung wird dabei die ASCII-Nummer _
des Letzten Buchstabens von 1. und letzen Code verwendet.
For SpalteOrigin = Asc(Right(sOrigin1, 1)) To Asc(Right(sOrigin2, 1))
ZeileZ = ZeileZ + 1
.Cells(ZeileZ, 1) = Left(sOrigin1, 2) & Chr(SpalteOrigin)
.Cells(ZeileZ, 2) = vZone
Next
End With
Next
End With
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige