Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1748to1752
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
Inhaltsverzeichnis

VBA Left mit mehreren Parametern

VBA Left mit mehreren Parametern
29.03.2020 19:35:14
walker950
Guten Abend zusammen,
Habe eine Frage zu der VBA Left Funktion. Habe eine Code erstellt
Die Einträge in der Tabelle Spalte A sind verschieden lang mal müssen 19 Zeichen und auch 14 Zeichen von Links dargestellt nun möchte ich erreichen, dass das Makro selbst unterscheidet bei welchem Eintrag wie viele Stellen angezeigt werden. Bei For i = 1 To 20 möchte ich das Endlos Zeilen geprüft werden. Das ganze kommt dann in ein anderes bestehendes Modul. Da stellt sich mir die Frage wie ich das aufrufen kann.
Sub ZeichenketteBearbeiten()
'Variablen definieren
Dim Text As String
Dim Auszug As String
Dim i As Integer
For i = 1 To 20
Cells(i, 1).Value = Left(Cells(i, 1).Value, 19)
Next i
End Sub
Über Hilfe würde ich mich freuen.
Grüsse
walker950

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Left mit mehreren Parametern
29.03.2020 19:37:31
Hajo_Zi
wie soll Excel entscheiden wann 14 Stelle wann 19 Stellenm?
Gruß Hajo
AW: VBA Left mit mehreren Parametern
29.03.2020 20:27:55
walker950
Hallo Hajo
Das ist ja genau mein Problem wie ich das hinbekomme.
Die Daten sehen so aus:
Bsp.
03400.600_0001_EHA_Ort
03400.600_0011_0014_EHA_Ort
Das Ergebnis sollte so sein.
03400.600_0001
03400.600_0011_0014
Ich hoffe das es eine Möglichkeit gibt.
Gruss
walker950
AW: VBA Left mit mehreren Parametern
29.03.2020 20:34:29
Hajo_Zi

Tabelle1
 AB
103400.600_0001_EHA_Ort03400.600_0001
203400.600_0011_0014_EHA_Ort03400.600_0011_0014

verwendete Formeln
Zelle Formel Bereich N/A
B1:B2=WENNFEHLER(LINKS(A1;SUCHEN("_EHA";A1)-1);A1)  


Gruß Hajo
Anzeige
AW: VBA Left mit mehreren Parametern
30.03.2020 05:29:36
walker950
Hi
Danke für deinen Input,kann man
bei "_EHA" eine Variable setzen da die Buchstaben nach dem
ersten Unterstrich nicht immer gleich sind?
Gruss
walker950
AW: VBA Left mit mehreren Parametern
30.03.2020 05:36:02
Hajo_Zi
für "_EHA" z1
Gruß Hajo
AW: VBA Left mit mehreren Parametern
30.03.2020 05:50:13
walker950
Hallo Hajo
Wo muss ich das z1 genau einbauen und wie wirkt sich das auf alle anderen Kürzel aus.
Danke und einen schönen Tag.
Grüsse
walker950
AW: VBA Left mit mehreren Parametern
30.03.2020 07:15:23
Daniel
So funktioniert das nicht.
Wir kennen deine Daten nicht, wir wissen nicht welche Gälle alle vorkommen
Wir brauchen von dir eine Beschreibung. San getrennt werden soll, die für alle Datensätze gültig ist.
Denke da auch noch gar nicht an die Programmierung oder wie die Regel umgesetzt wird.
So eine Regel wäre beispielsweise: Trenne nach dem letzten Block aus 4 Ziffern.
Aber wie gesagt, die Regel musst du uns geben und "mal so, mal so " ist keine Regel.
Oder es gibt eine klare Wenn-Dann- Beziehung, mit der klar erkennbar ist, wann nach 14 und wann nach 19 Zeichen getrennt werden muss
(Vielleicht sowas wie "wenn das 16.Zeichen eine Ziffer ist, dann trenne nach 19 Zeichen, sonst nach 14".
Gruß Daniel
Anzeige
AW: VBA Left mit mehreren Parametern
30.03.2020 09:27:37
walker950
Hallo Daniel
Danke für deine Hilfe, die Lösung von Case ist genau die Richtige.
Grüsse
walker950
AW: VBA Left mit mehreren Parametern
30.03.2020 08:13:55
Hajo_Zi
so wie geschrieben. in Zi steht der suchbegriff.
Zu Deiner Datei kann ich nichts schreiben, was wohl daran liegt das ich nicht auf fremde Rechner schaue.Ich baue keine Datei nach.
Sollte die Datei verlinkt werden?
Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten
http://www.ms-office-forum.de/forum/showthread.php?t=322895
änderrn.
Das ist nur meine Meinung zu dem Thema.
Gruß Hajo
Anzeige
AW: VBA Left mit mehreren Parametern
30.03.2020 09:26:39
walker950
Hallo Hajo
Danke für deine Hilfe, die Lösung von Case ist genau die Richtige.
Grüsse
walker950
AW: VBA Left mit mehreren Parametern
30.03.2020 00:12:13
Barbara
Hallo walker,
Mit instr bekommst Du die Position eines Strings.
Also:
Left("03400.600_0001_EHA_Ort", InStr("03400.600_0001_EHA_Ort", "EHA") - 2)
ergibt das gewünschte "03400.600_0001"
LGB
AW: VBA Left mit mehreren Parametern
30.03.2020 05:41:51
walker950
Guten Tag Barbara
Kannst du mir bitte erklären wie ich das einbauen muss?
Danke und Gruss
walker950
AW: VBA Left mit mehreren Parametern
30.03.2020 01:21:38
Daniel
Hi
Kannst du eine Regel beschreiben, an der man erkennt, WP gegtrennt werden muss und die für alle Zeilen gleich gilt?
Also sowas wie
- immer vor dem vorletzten Unterstrich
- immer vor dem Text "_Ort"
- immer vor dem 7. Zeichen von rechts
Und wie gesagt, die Regel sollte für alle gelten.
Stell dir vor, ein Praktikant muss das von Hand machen und du musst ihm die Aufgabe erklären.
Gruß Daniel
Anzeige
AW: VBA Left mit mehreren Parametern
30.03.2020 05:24:46
walker950
Guten Tag Daniel
Es muss an zwei verschiedenen stellen getrennt werden. Es gibt die Einträge wie folgt.
1) 03400.600_0001_Kürzel_Ort Ergebnis 03400.600.0001
2) 03400.600_0002_0011_Kürzel_Ort Ergebnis 03400.600_0002_0011
Bei 1) ist die Trennung immer nach 14 Zeichen.
Bei 2) nach 19 Zeichen
Ich habe auch versucht mit VBA Mid Funktion, bringt mich irgendwie auch nicht weiter.
Das Problem ist das ich zwei verschiedene Längen habe.
Ach ja bin nicht der Praktikant, aber der wo das täglich von Hand machen muss mit tausenden von
Zeilen :-(
Gruss
walker950
Anzeige
AW: Bezogen auf...
30.03.2020 09:24:49
walker950
Hallo Case
Habe es mit den realen Daten ausprobiert, einfach super wie das funktioniert.
Genau das habe ich gesucht und dank dir bekommen.
Es erleichtert meine Arbeit um vieles.
Herzlichen Dank dafür und einen schönen Tag
Grüsse
walker950

93 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige