Live-Forum - Die aktuellen Beiträge
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

autom. Trennung des Zellwertes b. allen Eingaben

autom. Trennung des Zellwertes b. allen Eingaben
10.11.2003 22:52:44
udo
Schönen Abend zusammen,

hab mal vor geraumer ZEit folgendes Makro ebenfalls aus dem Forum bekommen, um
einen in einer Zelle eingegebenen Wert aus Zahlen & Buchstaben , der 10 stellig
ist.

zB.: 0123123123 zu 0_123_123_123 ( die Striche sind Leerzeichen ), oder
zB.: 1451258RE9 zu 1_451_258_RE9 ( "" ).

Sprich die Trennung soll immer an 2. , 4. , & 7. Stelle erfolgen, und der Zellwert ist immer 10 stellig.

Mit diesem Makro hat es zumindest in Excel XP schon ganz gut funktioniert, jedoch EXCEL 97 im Gesch. meckert dabei.
" Mid " wird dabei ständig bemängelt. Habe schon probiert Mid zu dekl. aber leider ohne Erfolg.

Zum Thema:

Gibts ne Lösung auf einer einfachen Zellformatierung die ich noch nicht kenne,
# ### ### ### oder so ähnlich ???

Oder hat mir bitte Jemand eine andere VBA Anweisung für beispielsweise Spalte B.

wäre Euch wiedermal sehr verbunden, vielen liebn Dank im Voraus, Gruß udo

----------------------------------------------------------------------------

If Target.Column = 2 Then

If Len(eingabe) = 10 Then
Target = Mid(eingabe, 1, 1) & " " & Mid(eingabe, 2, 3) & " " & Mid(eingabe, 5, 3) & " " & Mid(eingabe, 8, 3)
End If
End If

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: autom. Trennung des Zellwertes b. allen Eingab
10.11.2003 23:00:24
RAnton
Hallo Udo
sag mal was dein Excel-97 sagt. Bei mir geht dein Code.

Gruß
RAnton
Sorry , geht von hier aus nicht , denn
10.11.2003 23:07:58
udo
Hallo erstmal, ...

... die Datei spinnt nur im Geschäft bei mir ? komisch, mir ist echt auch nicht klar
was warum wie.

Wenn ich mich recht erinnere bez. er Mid als nicht erkannte Vari.
Bin mir aber nicht sicher.

Was auf jedenfall dort dann immer blau leuchtet im Debugger ist die Bezeichnung " Mid "
???

das ist mir ne Nummer zu hoch, ...wäre toll wenn Euch da was dazu bekannt ist
Danke dir schon mal, lieben Gruß udo
AW: autom. Trennung des Zellwertes b. allen Eingaben
10.11.2003 23:03:47
PeterW
Hallo Udo,

was steht denn in eingabe? Probier es mal mit

If Target.Column = 2 And Len(Target) = 10 Then
Target = Left(Target, 1) & " " _
& Mid(Target, 2, 3) & " " & _
Mid(Target, 5, 3) & " " & Mid(Target, 8, 3)
End If

Gruß
Peter
Anzeige
AW: autom. Trennung des Zellwertes b. allen Eingaben
10.11.2003 23:15:06
udo
Hallo Peter, schönen Dank auch an dich,

ich weis jetzt nicht ob das dann zum Erfolg führt, da der Debugger bei uns im Gesch.
in meiner bisherigen Anweisung immer die Bezeichnung " Mid " beanstandet, und im als variable nicht ganz geläufig ist.
Als ich vor einigen Tagen den Fehler schonmal postete, meinte man dass das was der der
" Objektbibliothek " zu tun haben könnte ???

Das ist mir alles leider zu hoch ... sorry.

Ich dacht , vielleicht gibts da ne ganz banale Lösung , indem man die Zelle mit rechtsklick formatiert zB.: mit # ### ### ### oder so ähnlich.

Aber egal wie ich da rumtrickse, bei Zahlen funkts, sind dann aber Buchstaben mit dabei, dann hab ich auf einmal noch 5 Nullen mit zusätzlich hinten dran stehen ???

Also auch nicht perfekt !

Sch... aber auch ;-)

Wär Euch echt dankbar für eine Lösung

Liebn Gruß , udo
Anzeige
AW: autom. Trennung des Zellwertes b. allen Eingaben
10.11.2003 23:04:04
FP
Hallo Udo,

also bei mir unter Excel97-SR2 funktioniert dieser Ereigniscode:

Option Explicit


Private Sub Worksheet_Change(ByVal Target As Excel.Range)
With Target
If .Cells.Count > 1 Then Exit Sub
If .Column = 2 And Len(.Value) = 10 Then _
.Value = Left(.Value, 1) & " " _
& Mid(.Value, 2, 3) & " " _
& Mid(.Value, 5, 3) & " " _
& Mid(.Value, 8, 3)
End With
End Sub


Servus aus dem Salzkammergut
Franz
AW: autom. Trennung des Zellwertes b. allen Eingaben
10.11.2003 23:19:17
udo
Hallo Franz,
Dank auch an Dich schon mal,
ja, wie bereits beschrieben, das ganze ist wohl recht merkwürdig ???

Ich weis echt auch nicht warum unser Excel im Gesch. da zu merkern hat ???

weis einer von euch , ob man " Mid " umgehn kann, indem man dafür was anderes nimmt ?
geht sowas überhaupt bei dieser Art v. Funktion.

Bei mir steht das ganze übrigens auch ebenfalls im Workshhet Cahnge Ereignis

Danke , und lieben Gruß ,udo
Anzeige
Ist euch zufällig so ne ganz banale Lösung ...
10.11.2003 23:23:24
udo
wie wenn man die Zelle selbst formatiert bekannt , die da greifen könnte ?

Ich krieg da noch die Pimpanelle. Das ist wirklich wie verzwickt !

Gruß udo
AW: Ist euch zufällig so ne ganz banale Lösung ...
10.11.2003 23:25:10
PeterW
Hallo Udo,

bei Zahlen geht das mit einem benutzerdefinierten Format aber sobald Buchstaben enthalten sind handelt es sich nicht mehr um eine Zahl sondern um einen Text.

Gruß
Peter
Ja, das ist echt schade, hab ich auch sch. entdeck
10.11.2003 23:28:51
udo
...

könntest du mir mal sagen für was dieses Mid überhaupt steht ?

vielleicht kann ich da irgend was umbauen ???

Gruß udo, Danke Peter
oder meint ihr das folgendes evt. helfen könnte
10.11.2003 23:32:17
udo
das man Mid deklariert mit

Dim Mid as ...( weis nicht genau )
Mid = m

und dann in der Anweisung anstatt Mid dann das m setzt, wird aber wahrsch, dann auch nicht funktioniern , ...

Vielleicht so ???

udo ;-)
Anzeige
AW: oder meint ihr das folgendes evt. helfen könnte
10.11.2003 23:42:15
PeterW
Hallo Udo,

aus der VBA-Hilfe zu Mid:

Gibt einen Wert vom Typ Variant (String) zurück, der eine bestimmte Anzahl von Zeichen aus einer Zeichenfolge enthält.
Syntax
Mid(string, start[, length])
Die Syntax der Mid-Funktion verwendet die folgenden benannten Argumente:

Teil Beschreibung
string Erforderlich. Zeichenfolgenausdruck, aus dem Zeichen zurückgegeben werden. Wenn string den Wert Null enthält, wird Null zurückgegeben.
start Erforderlich; Wert vom Typ Long. Position in string, an der die zurückzugebende Zeichenfolge beginnt. Ist start größer als die Anzahl der Zeichen in string, so gibt Mid eine leere Zeichenfolge ("") zurück.
length Optional; Wert vom Typ Variant (Long). Anzahl der zurückzugebenden Zeichen. Wird length nicht angegeben oder befinden sich weniger Zeichen im Text (das Zeichen an der Stelle start eingeschlossen), als durch length angegeben, so werden alle Zeichen ab start bis zum Ende der Zeichenfolge zurückgegeben.
Bemerkungen
Mit der Len-Funktion können Sie die Anzahl der Zeichen in string bestimmen.

Mid wird bei RAnton und FP unter Version 8 richtig erkannt. Probier morgen am anderen Rechner nochmal die Version von FP.
Falls das immer noch nicht klappt könnte ich mir die "Krücke" vorstellen, die Eingabe in einen String zu packen, mit Right zu kürzen und dann mit Left davon die erforderlichen Zeichen zu nehmen.

Gruß
Peter
Anzeige
ok, super , ganz herzl. Dank an euch Alle, ich ..
10.11.2003 23:53:02
udo
werd es mal am Mittwoch dann entsprechend testen, und mal schaun ob das zum Erfolg führte.

Ich werde meine Ergebnisse dann diesem Thread noch beigeben, sobald ich was in Erfahrung gebracht habe.

Kann aber ein paar Tage dauern evt. nur falls der Eine óder Andere auch mal gespannt ist obs klappt, dann kopiert euch halt mal den Link des Threads.

Also auf Jeden Fall ganz herzlichen Dank an Euch Alle, und schönen Abend noch

Gruß udo
AW: ok, super , ganz herzl. Dank an euch Alle, ich ..
10.11.2003 23:56:33
PeterW
Hallo Udo,

falls dich das Monstrum ohne Mid interessiert:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 And Target.Cells.Count = 1 And Len(Target) = 10 Then
Target = Left(Target, 1) & " " & _
Left(Right(Target, 9), 3) & " " & _
Left(Right(Target, 6), 3) & " " & _
Left(Right(Target, 3), 3)
End If
End Sub

Gruß
Peter
Anzeige
Ja genau , das is es
11.11.2003 00:03:35
udo
Super , Danke dir Peter.

Ich glaub das könnte helfen, so wie ich das schon beurteilen kann.
Die Grösse ist ja auch nicht wirkl. schlimm, hauptsache s' funktioniert dann auch.

Also vielen lieben Dank an dich, an Euch Alle ,

ihr seit spitze Jungs ;-)

Lieben Gruß , udo

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige