Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
336to340
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
336to340
336to340
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Adress-Text in "richtige" Datensätze überführen

Adress-Text in "richtige" Datensätze überführen
14.11.2003 17:57:27
Rolfo
Kann mir hierbei bitte jemand helfen?

Eine aus einer Textdatei importierte einspaltige Liste mit Adressen (ca. 2000, alle Adressfelder untereinander in Spalte A, siehe unten) will ich per Makro so ordnen, dass eine Tabelle mit "richtigen" Adressdatensätzen herauskommt.

Die Zellen sehen wie folgt aus (die 12345 in A1 entspricht einer Personennummer). Dabei kann eine Adresse bis zu 7 Zeilen lang sein. Nach der letzten Adresszeile folgen immer 3 Leerzeilen bis zur nächsten Personennummer, diese ist regelmäßig durch 4 Leerzeilen von der zugehörigen (folgenden) Anrede getrennt.

Ich möchte gerne die Adressfelder (jeweils 5-8 Zellen) automatisch nebeneinander in jeweils 1 Zeile anordnen (im Bsp. also A6 zu B1, A7 zu C1, A8 zu D1 usw.). Geht das denn per Makro? Für jede Hilfe bin ich dankbar.

(Spalte A)

12345

Herr
Karl
Mustermann
Musterstraße
67890 Musterstadt

Vielen Danke für Eure Hilfe.
Rolfo

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Adress-Text in "richtige" Datensätze überführen
14.11.2003 22:06:28
Nepumuk
Hallo Rolfo,
so geht's:


Option Explicit
Public Sub Adressen_anordnen()
Dim lngZeile As Long, intZeile As Long, intSpalte As Integer
Application.ScreenUpdating = False
intZeile = 1
intSpalte = 2
For lngZeile = 2 To Cells(65536, 1).End(xlUp).Row
If IsNumeric(Cells(lngZeile, 1)) And Cells(lngZeile, 1) <> "" Then
intSpalte = 2
intZeile = intZeile + 1
Cells(intZeile, 1) = Cells(lngZeile, 1)
Cells(lngZeile, 1) = ""
Else
If Cells(lngZeile, 1) <> "" Then
Cells(intZeile, intSpalte) = Cells(lngZeile, 1)
Cells(lngZeile, 1) = ""
intSpalte = intSpalte + 1
End If
End If
Next
Application.ScreenUpdating = True
End Sub



Code eingefügt mit: Excel Code Jeanie

Gruß
Nepumuk
Anzeige
AW: Adress-Text in "richtige" Datensätze überführen
14.11.2003 22:18:46
Rolfo
Hallo Max P.,

das sieht ja schon sehr gut aus, nur meine ich (fast) genau den anderen Weg herum: nicht die Zellen aus einer Zeile sollen in einem (Spalten-)Feld zusammengefasst werden, sondern eine bestimmte Anzahl von Zellen einer Spalte auf genausoviele Zellen einer Zeile "umverteilt" werden.

Manuell geht das, indem ich z.B. die (Spalten-)Zellen ab der ersten Personenziffer (12345) bis vor die nächste Personenziffer markiere und kopiere, dann in einer neuen Tabelle mit INHALTE EINFÜGEN\"Transponieren" einfüge, wieder zur Ursprungstabelle wechsle, die nächsten Zellen markiere, usw. Aber das mehr als 2000 mal...?

Diesen Vorgang würde ich gerne als Makro automatisch ablaufen lassen. Kann aber leider (noch?) kein VBA, bin aber sehr lernwillig...

Kannst Du mir da noch weiterhelfen? Wäre klasse. Vielen Dank.

Rolfo
Anzeige
AW: Adress-Text in "richtige" Datensätze überführen
14.11.2003 22:36:59
Rolfo
Hallo Nepomuk,

klasse: genauso funktioniert's. Du hat mir jetzt super gut geholfen. Herzlichen Dank!!!
(Irgendwann lerne ich auch noch mal VBA – nur wie und wann?!)

Viele Grüße, Rolf

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige