Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
756to760
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
756to760
756to760
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Pfad über Auswahlmenü auswählen

Pfad über Auswahlmenü auswählen
27.04.2006 12:33:13
Basch
Hallo Leute,
mit dem unten stehenden Code lese ich aus einem Verzeichnis alle Dateien mit dem Pfad und der Größe aus. Wie ihr seht ist der Pfad im code in der dritten Zeile vorgegeben.
Ich würde aber gerne, wenn ich das Makro starte, über ein Auswahlfeld (explorerähnlich wie nach der GetOpenFilename-Methode) im Dialogfeld den Pfad auswählen können. Leider sind meine Versuche in den Code etwas hinzubasteln gescheitert. Kann mir bitte einer helfen?
Grüße von Basch

Sub Alter()
Dim Pfad$, Ext$, i&, Jahr%, Z&
Pfad = "G:\DAT\Prj\32" 'anpassen
Ext = "*.*"
Z = 1
With Application.FileSearch
.NewSearch
.LookIn = Pfad
.SearchSubFolders = True 'auch die Unterverzeichnisse
.Filename = Ext
.MatchTextExactly = True
.FileType = msoFileTypeAllFiles
.Execute
For i = 1 To .FoundFiles.Count
Z = Z + 1
Cells(Z, 1) = FileDateTime(.FoundFiles(i)) 'Datum
Cells(Z, 1).NumberFormat = "DD/MM/YYYY" 'Datum formatieren
'Link erzeugen******
ActiveSheet.Hyperlinks.Add Anchor:=Cells(Z, 2), _
Address:=.FoundFiles(i), TextToDisplay:=Dir(.FoundFiles(i))
'Pfad eintragen******
Cells(Z, 3) = Left(.FoundFiles(i), Len(.FoundFiles(i)) - Len(Dir(.FoundFiles(i))))
'Dateiart******
Cells(Z, 4) = Right(.FoundFiles(i), 3)
'End If
Next i
End With
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Pfad über Auswahlmenü auswählen
27.04.2006 13:01:18
Sebastian
Public Type BROWSEINFO 'Kommt in das Modul
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type
Declare

Function SHGetPathFromIDList Lib "shell32.dll" _       'Kommt in das Modul
Alias "SHGetPathFromIDListA" (ByVal pidl As Long, _
ByVal pszPath As String) As Long
Declare 

Function SHBrowseForFolder Lib "shell32.dll" _          'Kommt in das Modul
Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long

Function GetDirectory(Msg) As String            'Kommt dorthin wo dein Code steht
Dim bInfo As BROWSEINFO
Dim path As String
Dim r As Long, x As Long, pos As Integer
With bInfo
.pidlRoot = 0&
.lpszTitle = Msg
.ulFlags = &H1
End With
x = SHBrowseForFolder(bInfo)
path = Space$(512)
r = SHGetPathFromIDList(ByVal x, ByVal path)
If r Then
pos = InStr(path, Chr$(0))
GetDirectory = Left(path, pos - 1)
Else
GetDirectory = ""
End If
End Function

Anzeige
AW: Pfad über Auswahlmenü auswählen
27.04.2006 13:42:54
Basch
Lieber Sebastian,
vielen Dank für Deine Antwort. Aber wie wird Dein Programm eingefügt?
Ist es richtig, dass die Abschnitte in denen steht „kommt in das Modul“ in das Klassenmodul der Tabelle gehört?
Warum sind die beiden Declare – Abschnitte bei mir rot unterlegt? Ist das eine Fehlermeldung?
Wohin kommt der Abschnitt der mit „Kommt dorthin wo dein Code steht“ hin?
Kommt der gleich unter die Dim Anweisung im Modul?
Kannst Du mir bitte noch weiterhelfen.
Gruß, Basch
AW: Pfad über Auswahlmenü auswählen
27.04.2006 13:55:27
Sebastian
Also, da ist etwas das so ähnlich wie Modul1 heißt oder mal hieß, nicht das klassenmodul
--- Da kommen die Typevereibarung hin und die beiden Funktionen
Und das andere kommt in das Tabellenmakro, quasi dorthin wo du den Code ausführen willst.
also bei mir funktioniert es tadellos.
Anzeige
AW: Pfad über Auswahlmenü auswählen
27.04.2006 15:34:43
Basch
Hallo Sebastian,
die Internetverbindung klappt heute nur schlecht, daher mein langsamer Dialog.
Ich weiß nicht wie es geht und die roten Zeilen aus der Declare - Anweisung geben mir zu denken.
Ich habe Dir meine Datei mit dem Code, wie er jetzt bei mir aussieht mal hochgeladen. Schau ihn Dir doch bitte mal an. Ich bin ratlos und weiß nicht wie Du es meinst.
https://www.herber.de/bbs/user/33176.xls
Vielen Dank für die Hilfe bisher, Basch
AW: Pfad über Auswahlmenü auswählen
27.04.2006 15:49:55
Sebastian
https://www.herber.de/bbs/user/33180.xls
ich habe es dir da hin gestellt,
es waren zwei fehler, einer ....du mußt meine Kommentare wieder wegnehmen, die standen nur fürs Forum da, diese Declare-Anweisungen würden sonst den Zeilenrahmen sprengen, deswegen der _ danach...
der zweite: du mußt diese funktion auch irgendwo mal aufrufen...
also durch einen Button wie hier geschehen...
Aber keine Panik, es ist noch kein Meister vom Himmel gefallen, ich weiß auch vieles nicht.
Anzeige
AW: Pfad über Auswahlmenü auswählen
27.04.2006 16:05:34
Basch
Hallo Sebastian,
vielen Dank für die tröstenden Worte, die kann ich jetzt gut gebrauchen. Vor allem deswegen, weil mir der Pfad im Dialogfeld schön ausgegeben wird aber dieser noch nicht in meinem Makro eingebunden ist. Da ich Dein Makro bei weitem nicht durchschaue, weiß immer noch nicht wie meine Sub durch Deine Funktion ausgelöst wird.
Meine Zeile Pfad = "G:\DAT\Prj\32 habe ich rausgenommen aber es funktioniert immer noch nicht.
Ich bitte um Geduld und um nochmals Hilfe, Basch
AW: Pfad über Auswahlmenü auswählen
27.04.2006 16:10:27
Sebastian
https://www.herber.de/bbs/user/33185.xls
ich habe es dir eingebunden aber noch nicht ausprobiert.
bei weiteren Fragen schreib mir einfach ne email:Sonneberger83@web.de
Anzeige
AW: Pfad über Auswahlmenü auswählen
27.04.2006 16:45:39
Basch
Lieber Sebastian,
vielen, vielen Dank für die geduldige Hilfe, jetzt geht es.
Ich wünsche Dir alles gut, Gruß Basch

300 Forumthreads zu ähnlichen Themen


Hallo Hans,
wenn ich die URLs richtig interpretiere, haben wir im Forum soeben die Zahl von 1 Million Beiträgen überschritten.
Herzlichen Glückwunsch zu dem Erfolg Deines "Babys"!
Gruß
Martin
Anzeige

Hallo zusammen!
Ich habe da als blutiger Anfänger in VBA zwei Fragen:
1.) Wie kann ich in meiner Tabelle in jeder zweiten Spalte 4 leere Spalten einfügen lassen?
2.) Dann möchte ich unter den Inhalt der ersten fünf Spalten (A-E) den Inhalt der zweiten 5 Spalten (F-J) usw. In der grö...

Guten Morgen!
Ich hätte folgendes Problem: Ich erhalte automatisiert Exceltabellen, bei denen nicht alle Zellen einer Zeile gefüllt werden, wenn dort der Inhalt einer darüberliegenden Zeile stehen sollte. Zur Weiterverarbeitung muss ich aber diese Zellen mit den dazugehörigen Werten füllen....
Anzeige

Hallo zusammen,
ich habe eine lange Liste, in der in einer Spalte Daten stehen, wo ab und zu vorangehende Nullen nötig sind (mal eine - mal 2...etc.) - und manchmal auch keine.
Wie kann ich diese Zellen formatieren, das die vorangehenden "Nullen" nicht automatisch weggelassen werden?

Hallo Excel-Profis
ich habe folgenden Code in ein Makro eingebaut:
'Drucken mit Vorschau
Application.ActivePrinter = "\\dataserv\HP LaserJet 5L AV auf Ne05:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Preview:=True, Collate:= _
True
Hier wird der Standard-Drucker an...

Hallo,
Ich brauche dringend Eure Hilfe. Unter https://www.herber.de/bbs/user/54533.xls findet Ihr eine Mappe, in welcher in Spalte A
1 für "Kaufen"
0 für " "
-1 für "Verkaufen"
steht. IN SPALTE B SIND BISHER NUR MANUELL ERSTELLTE BEISPIELEINTRÄGE ENTHALTEN, DAMIT ERSICHTLIC...

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige