Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Formel ?

Forumthread: Formel ?

Formel ?
13.11.2003 14:43:05
Sebator
Hallo zusammen,

ich habe folgendes Problem:

ich habe eine Excel Datei in der gibt es eine Spalte in der viele
Informationen stehen. Diese Informationen sind durch ein Semikolon (;) getrennt.

hier eine beispiel zeile :

33 Euro; 20. Monat; Status: Rot; Anmeldung: N; ; blz: 12345678 kto: 1234567890 owner: Hans Mustermann; 3Volt;

Jetzt möchte ich gern den ersten Wert (33 Euro) am Anfang der Spalte löschen und diesen Wert dann an die vorletzte Stelle einfügen.

so soll es aussehen

20. Monat; Status: Rot; Anmeldung: N; ; blz: 12345678 kto: 1234567890 owner: Hans Mustermann; 33 Euro; 3Volt;

gibt es dafür ne Formel oder wie kann man das am besten lösen.
Ich schätze mal hier sind die richtigen Cracks gefragt :)

Wäre schön wenn mir jemand helfen könnte. Ich brauche so schnell wie möglich eine Lösung.

Besten Dank

Sebator
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Formel ?
13.11.2003 14:59:22
Harald Kapp
Hallo Seb,
per Formel wird das so einfach nix.
Entweder eine VBA-Prozedur, die den Teil bis zum ersten Semikolon ausschneidet und nach dem n-ten Semiklon einfügt.

oder mittels Daten->Text in Spalten->getrennt-> Trennzeichen=Semikolon die Daten in verschiedene Spalten separieren und anschließend die Spalten umsortieren.

gruß Harald
Anzeige
AW: Formel ?
13.11.2003 15:08:56
Sebator
Das hab ich mir schon gedacht. Hmm, dann kann ich das wohl doch vergessen.
Naja, trotzdem Danke für die Antwort Harald

Gruß
Sebator
AW: Formel ?
13.11.2003 15:28:21
Nayus
Hallo.
Per Formel geht das nicht.

Folgendes Makro erledigt die Aufgabe.
Bedingungen:
Deine Daten Stehen in Spalte A
Die Ausgabe erfolgt in Spalte B

Viel Erfolg,
Nayus


Sub tauschen()
Dim bProcced, bEur As Boolean
Dim iCnt, iSemiCnt As Integer
Dim tBuff, tEurBuff  As String
bProceed = True
'iCnt = Zeile, in der die Daten anfangen - 1
iCnt = 0
While bProceed = True
iCnt = iCnt + 1
' Spalte A prüfen
If ActiveSheet.Cells(iCnt, 1) = "" _
Or IsNull(CVar(ActiveSheet.Cells(iCnt, 1))) _
Or IsEmpty(CVar(ActiveSheet.Cells(iCnt, 1))) Then
bProceed = False
Else
bEur = False
tEurBuff = ""
tBuff = ""
iSemiCnt = 0
For i = 1 To Len(ActiveSheet.Cells(iCnt, 1))
If Not bEur Then
tEurBuff = tEurBuff & Mid(ActiveSheet.Cells(iCnt, 1), i, 1)
If Mid(ActiveSheet.Cells(iCnt, 1), i, 1) = ";" Then
bEur = True
Exit For
End If
End If
Next i
If bEur Then
For j = Len(tEurBuff) + 1 To Len(ActiveSheet.Cells(iCnt, 1))
If Mid(ActiveSheet.Cells(iCnt, 1), j, 1) = ";" Then
iSemiCnt = iSemiCnt + 1
End If
tBuff = tBuff & Mid(ActiveSheet.Cells(iCnt, 1), j, 1)
If iSemiCnt = 5 Then
tBuff = tBuff & tEurBuff & Mid(ActiveSheet.Cells(iCnt, 1), j + 1)
MsgBox tBuff
Exit For
End If
Next
' Neuen String in Spalte B der aktuellen Zeile einfügen
ActiveSheet.Cells(iCnt, 2) = tBuff
End If
End If
Wend
End Sub

Anzeige
AW: Formel ?
13.11.2003 17:01:51
Sebator
YEAAAAAHHHH JUHU !!!! SUPER

Danke dir Nayus !!!!!!! vielen vielen DANK
Es funktioniert

Gruß
Sebator
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige