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

Teil eines Strings aussondern...Part 2 :(

Teil eines Strings aussondern...Part 2 :(
17.02.2004 09:07:28
Alexej
Hallo Forum :)
Gestern haben wir es geschafft, den Teil eines Strings auszusondern.
String:
c:\etwas\noch etwas\inventory-india.xls
Angewendete Formel:
=mid(C2;FIND("-";C2)+1;len(C2)-FIND("-";C2)-4)
Ergebniss:
India
Problem:
Nun ist es so, dass wir verschiedene Strings haben.
Beispiel:
c:\etwas\nochirgendetwas\inventory_russia.xls
c:\noch ein ordner\hier ist auch was\inventory,indonesia.xls
Ich moechte immer das Land rausfiltern, dass nach der Bezeichnung "inventory" + irgendein Zeichen steht.
Russia
Indonesia
D.h., die Dateien koennen verschieden heissen, nur die Bezeichnung "inventory" ist immer gleich, nach dieser Bezeichnung kommt ein weiteres Zeichen und dann kommt die Landesbezeichnung, die ich rausfiltern moechte.
Geht sowas?
Vielen Dank,
Alexej

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Teil eines Strings aussondern...Part 2 :(
17.02.2004 09:19:43
Ramses
Hallo
probier mal das
Option Explicit

Sub test()
Dim a As String, b As String
Dim result As String
Dim fc As Integer
a = "c:\etwas\nochirgendetwas\inventory_russia.xls"
b = "c:\noch ein ordner\hier ist auch was\inventory,indonesia.xls"
'Diese Formel extrahiert den Namen
result = Right(a, Len(a) - (InStr(1, a, "inventory") + 9))
Debug.Print result
result = Right(b, Len(b) - (InStr(1, b, "inventory") + 9))
Debug.Print result
End Sub

Gruss Rainer
Danke Rainer :) o.T.
17.02.2004 10:18:14
Alexej
AW: Teil eines Strings aussondern...Part 2 :(
17.02.2004 09:20:22
Matthias G
Hallo Alexej,
eine Lösung mit VBA - sicher nicht die eleganteste, aber sie funktioniert:

Function Land(s As String) As String
Const searchstring = "inventory"
Dim i As Integer, s0 As String
i = InStr(s, searchstring)
If i = 0 Then Land = "": Exit Function
s0 = Mid(s, i + Len(searchstring) + 1)
Land = WorksheetFunction.Proper(Left(s0, Len(s0) - 4))
End Function

Gruß Matthias
Anzeige
Danke dir vielmals :)
17.02.2004 10:17:17
Alexej
Habe die Formel von Joahim benutzt, da fuehle ich mich sicherer, als mit VBA :))
Viele Gruesse,
Alexej
vielleicht so?
17.02.2004 09:27:13
IngoG
Hallo Alexej,
wenn Du mit den deutschen Formeln etwas anfangen kannst:
=WECHSELN(TEIL(A1;FINDEN("inventory";A1;1)+10;999);".xls";"")
sollte es tun, wenn im Pfad nicht noch "inventory" vorkommen kann
Gruß Ingo
PS eine Rückmeldung wäre nett...
Danke dir Ingo :)
17.02.2004 10:16:31
Alexej
Habe die Formel von Joahim benutzt, weil ich damit schon gearbeitet habe :)
Viele Gruesse,
Alexej
Danke für die Rückmeldung oT
17.02.2004 10:20:10
IngoG
.
AW: Teil eines Strings aussondern...Part 2 :(
17.02.2004 09:31:28
Joachim W.
Hallo,
geht auch mit erweiterter Formel von gestern:
=mid(C2;FIND("inventory";C2)+10;len(C2)-(FIND("inventory";C2)+8)-4)
Gruß
Joachim
Anzeige
Danke dir Joahim :)
17.02.2004 10:14:16
Alexej
Noch eine kleine Frage, z.Z. reagiert er case sensitive, ist es moeglich, dass es fuer ihn keinen Unterschied macht, ob das Wort "Inventory" gross oder klein geschrieben ist? :)
Viele Gruesse,
Alexej
AW: Danke dir Joahim :)
17.02.2004 10:30:00
IngoG
Hallo Alexej,
das problem läßt sich folgendermassen lösen:

=mid(C2;FIND("INVENTORY";upcase(C2))+10;len(C2)-(FIND("INVENTORY";upcase(C2))+8)-4)
(Wenn upcase wirklich die deutsche Func Gross() ist
gruß Ingo
PS eine Rückmeldung wäre nett...
AW: Danke dir Joahim :)
17.02.2004 10:36:20
Joachim W.
Hallo Alexej,
ersetze FIND durch SEARCH, dann wird nicht mehr zwischen Groß-/Kleinschreibung unterschieden.
Gruss
Joachim
Anzeige
Dank Ingo und Joachim
17.02.2004 11:34:14
Alexej
Beide Versionen funktionieren einwandfrei, danke vielmals :)
Viele Gruesse,
Alexej
Danke für die Rückmeldung oT
17.02.2004 14:02:28
IngoG
.

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige