Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1220to1224
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

n-tes Auftreten eines Zeichens in String

n-tes Auftreten eines Zeichens in String
Enrico
Liebe Forumsmitglieder,
nach langer Suche im WWW bleibt mir nun keine andere Moeglichkeit mehr.
Ich moechte in einem String, z.b: "G:\Departments\PD\5S - MSC\WAREHOUSE\Umsetzung\Pictures\EditDSCF9682.JPG"
variabel das zweite, dritte, vierte mal auftreten des "\" berechnen, um bestimmte Teile eines Pfades auszuschneiden.
Leider habe ich bisher keine VBA freie Loesung finden koennen.
Habr ihr eine Idee?
Ich habe auch noch keine VBA-Loesung gefunden, die in Excel 2000 funktioniert :-)
Bin fuer jeden Tip sehr dankbar

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

Betreff
Benutzer
Anzeige
AW: n-tes Auftreten eines Zeichens in String
08.07.2011 05:51:03
BoskoBiati
Hallo,
suchst Du sowas:
Arbeitsblatt mit dem Namen 'Tabelle1'
 ABCDE
1G:\Departments\PD\5S - MSC\WAREHOUSE\Umsetzung\Pictures\EditDSCF9682.JPG318G:\Departments\PD5S - MSC\WAREHOUSE\Umsetzung\Pictures\EditDSCF9682.JPG
2 756G:\Departments\PD\5S - MSC\WAREHOUSE\Umsetzung\PicturesEditDSCF9682.JPG

ZelleFormel
C1=SUCHEN("#";WECHSELN($A$1;"\";"#";B1))
D1=LINKS($A$1;SUCHEN("#";WECHSELN($A$1;"\";"#";B1))-1)
E1=TEIL($A$1;SUCHEN("#";WECHSELN($A$1;"\";"#";B1))+1;99)
B2=SUMMENPRODUKT((TEIL(A1;ZEILE(1:99);1)="\")*1)
C2=SUCHEN("#";WECHSELN($A$1;"\";"#";B2))
D2=LINKS($A$1;SUCHEN("#";WECHSELN($A$1;"\";"#";B2))-1)
E2=TEIL($A$1;SUCHEN("#";WECHSELN($A$1;"\";"#";B2))+1;99)
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg

Gruß
Bosko
Anzeige
VBA Lösung
08.07.2011 08:09:11
Heiko
Moin Enrico,
wenn du Teile des Pfades ausschneiden willst dann z.B. so:
Sub ZerlegenVBA()
Dim strPfad As String
strPfad = "G:\Departments\PD\5S - MSC\WAREHOUSE\Umsetzung\Pictures\EditDSCF9682.JPG"
MsgBox "1. Teil = " & Split(strPfad, "\")(0)
MsgBox "2. Teil = " & Split(strPfad, "\")(1)
MsgBox "3. Teil = " & Split(strPfad, "\")(2)
MsgBox "4. Teil = " & Split(strPfad, "\")(3)
End Sub
Solange Split schon EXCEL 2000 vorhanden ist, dann kann ich hier (2007) nicht prüfen.
Gruß
Heiko
Anzeige
VBA Lösung, Nachtrag
08.07.2011 08:39:56
Heiko
Moin nochmal,
hier noch ein paar Lösungsmöglichkeiten:
Sub ZerlegenVBA()
Dim strPfad As String
strPfad = "G:\Departments\PD\5S - MSC\WAREHOUSE\Umsetzung\Pictures\EditDSCF9682.JPG"
MsgBox "1. Auftreten = " & Split(strPfad, "\")(0)
MsgBox "2. Auftreten = " & Split(strPfad, "\")(1)
MsgBox "3. Auftreten = " & Split(strPfad, "\")(2)
MsgBox "4. Auftreten = " & Split(strPfad, "\")(3)
MsgBox "1. - 4. Teil = " & Join(Array(Split(strPfad, "\")(0), Split(strPfad, "\")(1), Split( _
strPfad, "\")(2), Split(strPfad, "\")(3)), "\")
' Die gute alte Methode mit Instr, InstrRev, Left, Right, Mid geht natürlich auch immer.
' Finde ich persönlich aber unübersichtlicher.
' Nur das Laufwerk
MsgBox "Nur Laufwerk = " & Left(strPfad, InStr(strPfad, "\"))
' Laufwerk und erster Teil
MsgBox "Laufwerk und 1. Teil = " & Left(strPfad, InStr(InStr(strPfad, "\") + 1, strPfad, "\"))
' Laufwerk erster und zweiter Teil
MsgBox "Laufwerk 1. und 2. Teil = " & Left(strPfad, InStr(InStr(InStr(strPfad, "\") + 1,  _
strPfad, "\") + 1, strPfad, "\"))
' Dateinamen oder letzten Teil abschneiden
MsgBox "Dateinamen oder letzten Teil abschneiden = " & Left(strPfad, InStrRev(strPfad, "\"))
End Sub

Gruß Heiko
Anzeige

56 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige