Veröffentlicht 7. Dezember 200519 j Hallo Ich lese aus einem Verzeichnis per VBA Excel 2002 Makro Dateien aus. Diese Haben folgende Beschreibung, zb. sv_'Name'.txt. Dabei ist der Name variabel. Wie ich die ersten 3 Zeichen abschneide ist klar, per Mid. Aber wie kann ich nun die letzte 4 Zeichen ( .txt) abschneiden?????
7. Dezember 200519 j Zeichen=Len("Dateiname") NeuerName$=leftstr("Dateiname",(Zeichen-4)) Syntax bestimmt verbesserungsfähig aber die Art der Funtion sollte jetzt klar sein. Oder ? mfg sedu
7. Dezember 200519 j oder auch (wenn es z.b. auch mal ".html" sein kann oder sowas): dateiname = "blablub.txt" neuername = dateiname idx = InStrRev( neuername, "." ) if idx > 0 then neuername = leftstr( neuername, idx - 1 ) endif Nagel mich aber nicht auf die Syntax fest, ist lang her das ich vb geproggt hab
8. Dezember 200519 j warum einfach wenns auch schwierig geht, was? also wenn es immer am anfang 3 stellen und am ende 4 sind kannst du den mittelteil mit mid rausholen (für sachen am anfang und ende eines strings nimmt man logischerweise right() oder left()... ) ansonsten wenn das ganze dynamischer werden soll, sodass dir der erste teil und die dateiendung egal sein können (von der länge her) würde ich dir empfehlen nach dem _ bzw . zu suchen und das was dazwischen ist, ist dann dein text...
8. Dezember 200519 j Ist doch nicht kompliziert, dafür aber flexibel. Denn da wird nach dem letzten Punkt gesucht. Ist einer vorhanden geht er davon aus das danach eine Endung kommt und entfernt sie.
8. Dezember 200519 j Ist doch nicht kompliziert, dafür aber flexibel. Denn da wird nach dem letzten Punkt gesucht. Ist einer vorhanden geht er davon aus das danach eine Endung kommt und entfernt sie. aber auch nur ne halbe komplettlösung, dem "Namen" geht ja noch ein Prefix voraus, das man entweder hart abschneidet oder auch dynamisch durch das _ raushaut aber ich denk der threadersteller hat jetzt alle info die er braucht um das umzusetzen
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.