Veröffentlicht 26. Februar 200322 j Hallo, meine Anwendungsentwicklerkollegin hat die Aufgabe bekommen, in einer Exeltabelle einen Pfad anzugeben habe und ich nun in diesem Ordner alle Unterordner nach *workbook*.xls- Dateien zu durchsuchen und diese dann in eine Exeltabelle zu schreiben. Leider haben weder sie noch ich eine Ahnung wie man da vorgeht... Ich hoffe, es kann mir jemand einen Tip geben! Danke!
27. Februar 200322 j Autor Danke für den Versuch ...liegt wohl daran, daß ich mir selbst nicht ganz folgen kann, da ich mit solchen Problemstellungen normalerweise nichts zu tun habe. Ich habe mittlerweile folgendes Makro: Sub DateinamenAuflisten() Dim Dateiname As String, Pfad As String Pfad = "d:\" Dateiname = Dir$(Pfad & "*workbook*.xls") Do While Dateiname <> "" ActiveCell = Dateiname ActiveCell.Hyperlinks.Add Anchor:=Selection, Address:= _ Pfad & Dateiname, TextToDisplay:=Dateiname ActiveCell.Offset(1, 0).Activate Dateiname = Dir$() Loop End Sub Das listet jetzt alle xls-Dateien in d:\, in denen "workbook" vorkommt in eine Tabelle und verlinkt sie mit dem entspechenden Dokument. Leider soll das 1. auch für alle Unterordner passieren, 2. soll anstatt des Dateinamens der Name des Ordners, in dem die Datei liegt angegeben sein (der Link aber auf die Datei) und 3. soll letztendlich der Inhalt dieser Datei in dem Sheet dargestellt werden, das die Tabelle mit der Liste enthält! Vielleicht kannst Du mir ja einen Tip geben?! Wäre super, ich komm' echt nicht weiter!
27. Februar 200322 j Hallo! So kann man zumindest unter Access mit VBA nach Dateien suchen, vielleicht hilft das weiter: With Application.FileSearch .NewSearch .LookIn = Pfad .SearchSubFolders = False .FileName = "Entladebericht" .MatchTextExactly = True .FileType = msoFileTypeExcelWorkbooks If .Execute() > 0 Then MsgBox "There were " & .FoundFiles.Count & _ " file(s) found." For i = 1 To .FoundFiles.Count MsgBox .FoundFiles(i) Next i Else MsgBox "There were no files found." End If End With Gruß JNeudorf
27. Februar 200322 j Autor Ja, das ist wirklich cool, so kann ich sehr leicht alle Unterordner mitdurchsuchen, das Einbinden der Verlinkung war auch kein Problem. Heißen Dank für den Code, langsam nimmt die ganze Sache Gestalt an ! Nur steht jetzt in der Tabelle nicht mehr bla.xls, sondern d:\pfad\zur\datei\ordner\bla.xls, es sollte aber (in diesem Fall) ordner da stehen, also der nächstübergeordnete Ordner... Vielleicht weiß da auch jemand Rat?
27. Februar 200322 j hi, ungetested aus der erinnerung: dim i as integer dim path as string dim filename as string dim sep as string dim ret as string sep = "\" path = getCompletePatch() 'hier den ausgelesenen pfadnamen merken filename = getFilename() 'hier den dateienemen speichern filename = sep & filename i = instrrev(path, sep, len(filename)) ret = mid(path, i, len(path) - i - len(filename) sollte so oder so aehnlich gehen hoffe, es hilft...
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.