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

per VBA den Pfad ermitteln

per VBA den Pfad ermitteln
Maxer
Hallo zusammen,
ich erstelle mir mit diesem Makro in einer Exceldatei ein Dateiverzeichnis ohne die Dateien zu öffnen
Sub Dateiverzeichnis()
importzeile = 12
With Application.FileSearch
.Filename = "*.xls"
.LookIn = "C:\Testverzeichnis"
.SearchSubFolders = True
.Execute
For i_datei = 1 To .FoundFiles.count
dateiname = Dir(.FoundFiles(i_datei))
Sheets("Tabelle1").Cells(importzeile, 14).Value = dateiname
' Sheets("Tabelle1").Cells(importzeile, 15).Value = anzeige Pfad?
importzeile = importzeile + 1
next i_datei
Das klappt auch ohne Probleme, doch möchte ich zum Dateinamen auch den Pfad mir anzeigen lassen. Doch im Moment weiß ich nur wie man den Pfad ermittelt wenn die Datei geöffnet ist. Aber wie zeige ich mir den an wenn die Datei nicht geöffnet wird?
Weiß das einer von euch?
Danke für die Hilfe
Gruß Ron

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: per VBA den Pfad ermitteln
15.02.2010 12:13:29
Josef
Hallo Ron,

beachte aber, das der Code ab xl2007 nicht mehr laufen wird.

With Application.FileSearch
  .Filename = "*.xls"
  .LookIn = "E:\Forum" '"C:\Testverzeichnis"
  .SearchSubFolders = True
  .Execute
  For i_datei = 1 To .FoundFiles.Count
    Sheets("Tabelle1").Cells(importzeile, 14).Value = Mid(.FoundFiles(i_datei), InStrRev(.FoundFiles(i_datei), "\") + 1)
    Sheets("Tabelle1").Cells(importzeile, 15).Value = .FoundFiles(i_datei)
    importzeile = importzeile + 1
  Next
End With

Gruß Sepp

Anzeige
@Sepp : InStrRev gibt es unter XL2000 m.E nicht_oT
15.02.2010 12:25:03
NoNet
_oT = "ohne Text"
@NoNet, hast recht, hab ich übersehen. o.T.
15.02.2010 12:33:37
Josef
Gruß Sepp

Objektkatalog - Strings - InstrRev !!!
15.02.2010 13:50:36
Luc:-?
Ich entwickle meist unter xl9 &rarr, folglich bleibt dein Erachten ganz allein deins, nicht meins, NoNet! ;-)
Gruß Luc :-?
M.E. hat sich geändert ;-)
15.02.2010 14:45:08
NoNet
Hey Luc,
schön, dass Du noch in einer 10 Jahre alten Software entwickelst ;-) - dieses Thema hat sich in meinem Fall seit 3 Jahren erledigt, seitdem wir (Firma) auf Excel 2003 umgestiegen sind (meine sonstige XL-Versionshistorie kennst Du ja bereits) .....
Habe eben mal in der VM nachgeschaut : Unter XL2000 gab es ja tatsächlich bereits INSTR(), INSTRREV() und STRREVERSE(). "Mein Erachten" hat sich diesbezüglich daher (hoffentlich nachhaltig) geändert und ich zeieh meinen Einwand gegenüber Sepp "hochachtungsvoll" ;-) zurück...
Gruß, NoNet
Anzeige
Ja, NoNet, beim Entwickeln von Multimedia-...
15.02.2010 16:56:24
Multimedia-...
...Projekten ging's in den 90ern immer auch um die Systemanforderungen. Will man viele Leute, sprich Kunden, erreichen, muss das Projekt in mehreren Umgebungen (evtl mit leichten Einschränkungen) lauffähig sein. Und so doll hat sich VBA ja vor xl12 nicht weiterentwickelt. Xl9 verwendet schon VB6 und da ist das wohl drin. Jetzt ist natürlich VB8 angesagt, aber solange ich mit meinem AddIn noch nicht fertig bin... — naja, schaun wir mal. Wahrscheinlich erst ganz zum Schluss, wenn ich evtl doch versuche, 'ne .dll draus zu machen, werd' ich mich damit befassen...
Gruß Luc :-?
PS: Es soll übrigens auch Fans von Uralt-Rechentechnik geben. Die Treffen sich regelmäßig und führen dann vor, was sie aus den alten Kisten noch so alles rausholen können. Diese Technik-Freaks bedauern offensichtlich, dass sich alles so rasant entwickelt, dass viele Richtungen gar nicht mehr bis zum Ende auf Weiterentwicklungsmöglichkeiten abgeklopft wdn.
Es soll ja auch noch Liebhaber 80 (achtzig!) Jahre alter Autos geben...
;-)
Anzeige
Ohne DIR()
15.02.2010 12:23:55
NoNet
Hallo Ron,
mit DIR() erhältst Du immer nur den Dateinamen ohne Pfad.
Um den kompletten Pfad der Datei zu erhalten, benötigst Du nur .FoundFiles(..) :
dateiname = .FoundFiles(i_datei) 'Gibt Dateiname inkl. Pfad zurück
Oder Du trennst beide Angaben :
dateiname = Dir(.FoundFiles(i_datei))
strPfad = Replace(.FoundFiles(i_datei), dateiname, "")
Sheets("Tabelle1").Cells(importzeile, 14).Value = dateiname
Sheets("Tabelle1").Cells(importzeile, 15).Value = strPfad

Gruß, NoNet
AW: Ohne DIR()
17.02.2010 07:49:43
Maxer
Also erst einmal vielen Dank für eure Hilfe. Das hat super geklappt.
Und ja es soll wirklich noch Firmen geben wo man mit Excel 2000 noch arbeiten muss.
Gruß Ron
Anzeige

110 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige