Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
372to376
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
372to376
372to376
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Aufteilung von Zelleninhalten nach Zahlen

Aufteilung von Zelleninhalten nach Zahlen
02.02.2004 15:04:05
Jennifer Weinberg
Hallo,

ich komme bei folgendem Problem nicht so richtig weiter:

Ich erhalte regelmäßig Excel-Files,
in der Inhalte in folgender Form vorliegen:
Bsp.
Nokia 3310i
Druckerpatrone XY12A315
Haribo Lakritze Produktnummer 312XVTIFG
usw.

Nun muss ich die Inhalte, dieser Zellen so verändern,
dass nach der jeweiligen ZAHL (bei dem Nokia Handy war es 3310, bei der Druckerpatrone war die Zahl 12)
ein Leerzeichen eingefügt wird.
Das Ergebnis dieses wäre somit:
Nokia 3310 i
Druckerpatrone XY12 A315
Haribo Lakritze Produktnummer 312 XVTIFG
Das jeweils einzeln zu machen ist Mega-Aufwendig.

Kann mir jmd mit einem Makro oder einer Formel weiterhelfen,
die das automatisch trennt?
Und wenn hinter der Zahl nichts mehr steht (Bsp: "Nokia 3310" ohne "i")
dann soll kein Leerzeichen angefügt werden.

Vielen Herzlichen Dank im Voraus,
Jennifer

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

Betreff
Datum
Anwender
Anzeige
AW: Aufteilung von Zelleninhalten nach Zahlen
03.02.2004 13:08:19
Marko
Hi Jennifer!
Den Berich in dem die Daten stehen, die Du ändern willst und folgendes Makro ausführen!
ich hoffe das funktioniert so, wie Du es dir vorgestellt hast.
Gruß
Marko
Public

Sub ZahlenAufteilung()
Dim changeCell, originalValue, newValue, x
For Each changeCell In Selection
originalValue = changeCell.Value
newValue = ""
For x = 1 To Len(originalValue) - 1
newValue = newValue & Mid(originalValue, x, 1)
If IsNumeric(Mid(originalValue, x, 1)) And _
Not IsNumeric(Mid(originalValue, x + 1, 1)) And _
Not Mid(originalValue, x + 1, 1) = " " Then
newValue = newValue & " "
End If
Next
newValue = newValue & Right(originalValue, 1)
changeCell.Value = newValue
Next
End Sub

Anzeige
AW: Aufteilung von Zelleninhalten nach Zahlen
03.02.2004 16:34:31
Jennifer Weinberg
VIELEN Herzlichen Dank,
Jennifer
AW: Aufteilung von Zelleninhalten nach Zahlen
03.02.2004 17:12:50
Jennifer Weinberg
Ein Frage habe ich dazu noch:
Wie würde das Makro denn analog dazu aussehen,
wenn das Leerzeichen statt wie bisher zwischen Zahl & Text
zwischen Text & der direkt darauf folgender Zahl (Bsp: "Handy Nokia3310")stehen soll?
Analog dazu: Wenn vor der Zahl nichts mehr steht (Bsp: "3310 Nokia")
bzw. bereits ein Leerzeichen vorhanden ist "Handy 3310",
dann soll kein Leerzeichen angefügt werden.
Ich dachte eigentlich, dass, wenn mir jmd das erste Problem löst,
ich von alleine auf diese Variante komme,
aber ist wohl doch ein wenig zu schwierig für mich : )

Danke & Gruss, Jennifer
Anzeige
AW: Aufteilung von Zelleninhalten nach Zahlen
04.02.2004 12:38:18
Marko
Wenn du beide Funktionen in einem haben willst, sieht das ganze so aus:

Sub ZahlenAufteilung()
Dim changeCell, originalValue, newValue, x
For Each changeCell In Selection
originalValue = changeCell.Value
newValue = ""
For x = 1 To Len(originalValue) - 1
newValue = newValue & Mid(originalValue, x, 1)
If Not Mid(originalValue, x + 1, 1) = " " And _
Not Mid(originalValue, x, 1) = " " Then
' Abfrage für Text folgend auf Zahl
If IsNumeric(Mid(originalValue, x, 1)) And _
Not IsNumeric(Mid(originalValue, x + 1, 1)) Then
newValue = newValue & " "
Else
' Abfrage für Zahl folgend auf Text
If Not IsNumeric(Mid(originalValue, x, 1)) And _
IsNumeric(Mid(originalValue, x + 1, 1)) Then
newValue = newValue & " "
End If
End If
End If
Next
newValue = newValue & Right(originalValue, 1)
changeCell.Value = newValue
Next
End Sub


Wenn Du nur eine Funktion haben willst, lösche einfach die entsprechende Abfrage.
Gruß
Marko
Anzeige

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige