WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Excel: Zelleninhalt aufteilen (VBA) (http://www.wcm.at/forum/showthread.php?t=92980)

Kasparov 02.04.2003 15:55

Excel: Zelleninhalt aufteilen (VBA)
 
Hallo Leute,

ich hab da folgendes Problem bei Excel: in einer Zelle habe ich alles mögliche stehen, nämlich PLZ, Ort, Strasse, Str.-Nr., Tel.-Nr.
Diese Daten würde ich gerne auf 5 Spalten aufteilen (also in 5 benachbarte Zellen umverteilen).

Im Internet habe ich unter http://www.sigmundhalpern.de/ ein Makro gefunden, das dem Ganzen schon sehr nahe kommt (siehe unten), aber eben nicht ganz ...
Kann mir vielleicht einer von euch Gurus das Makro umbauen? Wäre wirklich toll, da ich bei ein paar 100 Einträgen sonst ewig brauchen würde und ich mich mit VBA u.dergl. leider Null auskenne!

Vielen Dank,
Kasp.

------

Aus einem markierten Bereich die Vornamen und Nachnamen trennen und in die Nachbarzellen
einlesen:

Sub trennen()

Dim a%, b%, i%
Dim Zelle As Object

'Bereich muß markiert sein,
' für jede Zelle in der Markierung:
For Each Zelle In Selection
With Zelle
'Suche nach der ersten Leerstelle
a = InStr(.Value, " ")
'Schleife, falls mehrere durch leer getrennte Vornamen
'vorhanden sind, z. B. Ute Elke Meier
For i = 0 To Len(.Value)
b = InStr(Right(.Value, Len(.Value) - a), " ")
a = InStr(Right(.Value, Len(.Value) - a), " ") + a
Next
On Error Resume Next 'falls leere Zellen markiert sind
'Aufteilen auf die 1. Zelle rechts und die 2. Zelle rechts
'Vorname
Cells(.Row, .Column + 1).Value = Left(.Value, a - 1)
'Name
Cells(.Row, .Column + 2).Value = Right(.Value, Len(.Value) - a)
End With
Next

End Sub

flinx 02.04.2003 16:04

Wäre es nicht leichter, die Tabelle als Unicode-Text zu speichern und dann die Text-Datei wieder zu importieren. Da kannst schön festlegen, wie der Text in die Spalten übernommen wird.

Kasparov 02.04.2003 16:38

@flinx:

Stimmt, sollte vorerst genügen

DANKE,
Kasp.

Seidl 02.04.2003 20:40

Hier noch ein kleines Sub das die Sache auch sehr schön erledigt.

Kasparov 02.04.2003 22:19

@Seidl:

Interessant, nur funkts bei mir nicht...
"Fehler beim Kompilieren: Sub oder Function nicht definiert"

MfG, Kasp.

Seidl 03.04.2003 08:19

Das ist recht verwunderlich. Ich habe es gerade auf einem anderen Rechner laufen lassen und konnte keinerlei Probleme feststellen.
Ich glaube zwar eigentlich nicht, dass es an der Version von Excel liegen kann aber wer weiss. Ich benutze Office-XP. In welcher Version hast du getestet? Wie hast du das File in Excel eingefügt?

Kasparov 04.04.2003 11:16

@Seidl:

Excel 97. Eingefügt über VB-Editor - Datei importieren.
Das selbe in grün über VB-Editor - Ansicht - Code - <c&p>

MfG, Kasp.

Seidl 04.04.2003 15:02

Schräge Sache. In welcher Zeile fliegt er denn raus? Normalerweise legt der Editor ja eine Markierung auf den Codeteil der einen Fehler verursacht hat.
Wenn's sich ausgeht werde ich am Wochenende auf meiner heimatlichen Maschine mal Excel 97 installieren. Schon rein aus Interesse was da der grosse Unterschied ist.

Kasparov 04.04.2003 18:18

ich werd mal meinen Schlepptop mit Excel 2002 anwerfen, ich glsub das geht schneller :)

Kasp.

Seidl 06.04.2003 14:20

Wie gesagt war ich auch selbst neugierig. Der Übeltäter war die Funktion 'split' die offensichtlich in dieser Version noch nicht enthalten ist.
Ich habe mir schnell einen kleinen Ersatz geschrieben und schon hat die Sache funktioniert.


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:42 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag