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

Zellinhalt splitten

Zellinhalt splitten
29.10.2003 14:54:13
ewald
Hallo Forum,

kann mir jemand sagen warum der Code nicht funktioniert?


Sub test()
Dim z As Range
For Each z In Selection
z.Offset(0, -1).Value = Left(z.Value, 1, 1)
Next z
End Sub


In der Zelle sind Zahlen von1 bis 99, Zahlen 1-9
sollen in der Zelle bleiben, Zahlen 10-99 sollen geteilt
werden und zwar rechtsbündig z.B. Zelle B1 hat 10 dann
soll 0 in B1 bleiben und 1 in die A1 versetzt werden.

Hat jemand einen Tipp?

Vielen Dank.

Grüße
10

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellinhalt splitten
29.10.2003 15:16:36
ChrisL
Hi Ewald

Nicht getestet, aber denke dass..

Left(Cstr(z.Value), 1, 1)

..den Job tun müsste. Left sollte m.E. auf einen String angewendet werden und 'Cstr' wandelt eine Zahl in einen String um.

neben bei: Zitat Forums-FAQ
Fehlerbeschreibungen
Beschränke Dich nicht auf die lapidare Feststellung Excel meldet Fehler; gib die exakte Fehlermeldung an. Stoppt Excel einen VBA-Code, gib die exakte Zeile des Programmabbruchs an.

Gruss
Chris
AW: Zellinhalt splitten
29.10.2003 15:36:54
ewald
Hallo Chris,

Folgede Fehlermeldung: "Falsche Anzahl an Argumenten ober
ungültige Eigenschaftszuweisung"


Sub test()
Dim z As Range
For Each z In Selection
z.Offset(0, -1).Value = Left(CStr(z.Value), 1, 1)
Next z
End Sub


Habe ich richtig den Code geschrieben?

Vielen Dank.

Grüße
Anzeige
AW: Zellinhalt splitten
29.10.2003 16:30:18
ChrisL
Hi Ewald

so ist es richtig...

Option Explicit


Sub test()
Dim z As Range
For Each z In Selection
z.Offset(0, -1).Value = Left(z.Value, 1)
Next z
End Sub


Cstr war quatsch

Gruss
Chris
AW: Zellinhalt splitten
29.10.2003 19:00:11
ewald
Hallo Chris,

leider bleibt in der Zelle die Zahl unverändert stehen.
Beispiel: Zelle B1 hat eine 33 dann wird die Zahl 3 in der A1
ausgegeben, aber in B1 bleibt immer noch die 33 statt nur 3.

Vielen Dank.

Grüße
AW: Zellinhalt splitten
29.10.2003 19:59:43
ChrisL
Hallo Ewald

ja, so ist es programmiert ;-)

Wenn du die Ausgabe in der gleichen Zelle willst, dann schaut es so aus...


Sub test()
Dim z As Range
For Each z In Selection
z.Value = Left(z.Value, 1)
Next z
End Sub


Gruss
Chris
Anzeige
AW: Zellinhalt splitten
29.10.2003 20:37:20
ewald
Hallo Chris,

das Beispiel mit der Zahl 33 war nicht gerade gut.
Nehmen wir eine andere Zahl zum Beispiel-39 in Zelle B1
Ich möchte die Zahl 39 so aufteilen, dass in B1 9 steht
und in A1 die 3, wenn aber in B1 nur eine Zahl 5 steht,
dann soll sie unverändert inB1 bleiben.

Vielen Dank für die Bemühung.

Grüße
AW: Zellinhalt splitten
29.10.2003 21:54:37
Reinhard
Hi Ewald,
probier mal das aus.
Gruß
Reinhard

Sub test()
Dim z As Range
Dim x As Integer
For Each z In Selection
If z.Column = 1 Then GoTo Fehlerbehandlung
x = z.Value
z.Value = CInt(Right(z.Value, 1))
If Int(x / 10) <> 0 Then z.Offset(0, -1).Value = Int(x / 10)
Next z
Exit Sub
Fehlerbehandlung:
MsgBox "so geht's nich' *gg*"
End Sub
ergibt dann das Folgende:
Gesplittet   Original
34	5	345
1	2	12
4	4
1000	5	10005
0	0
-1	2	-2
-2	4	-14
1	5	15
1	5	12,5
-2	5	-12,5

Anzeige
AW: Vielen Dank es funktioniert
30.10.2003 07:27:15
ewald
Hallo zusammen,

ich Danke für die Hilfe.

Grüße
Danke für die Rückmeldung o.w.T.
30.10.2003 07:58:13
Reinhard
.
und Merci an ChrisL für die große Vorarbeit :-) oT
30.10.2003 08:10:24
Reinhard
.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige