Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1052to1056
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

makro an Excel 2007 anpassen...

makro an Excel 2007 anpassen...
21.02.2009 18:24:00
Tobias
das makro sollte alle dateien hyperverlinkt auflisten...
es scheint aber, als würde
With Application.FileSearch
ab excel 2007 nicht mehr unterstützt.
was muss ich ändern, das es funktioniert?
lg tobias
Option Explicit
Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As InfoT) As Long
Private Declare Function CoTaskMemFree Lib "ole32" (ByVal hMem As Long) As Long
Private Declare Function lstrcat Lib "kernel32" Alias "lstrcatA" (ByVal lpStr1 As String, ByVal lpStr2 As String) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pList As Long, ByVal lpBuffer As String) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassname As String, ByVal lpWindowName As String) As Long
Private Type InfoT
hwnd As Long
Root As Long
DisplayName As Long
Title As Long
Flags As Long
FName As Long
lParam As Long
Image As Long
End Type
Private Const BIF_RETURNONLYFSDIRS As Long = &H1
Private Const BIF_DONTGOBELOWDOMAIN As Long = &H2
Private Const BIF_RETURNFSANCESTORS As Long = &H8
Private Const BIF_RETURNONLYFSDIRSCREATENEW As Long = &H40
Private Const BIF_BROWSEFORCOMPUTER As Long = &H1000
Private Const BIF_BROWSEFORPRINTER As Long = &H2000
Private Const BIF_BROWSEINCLUDEFILES As Long = &H4000

Private Function GetAOrdner() As String
Dim xl As InfoT, IDList As Long, RVal As Long, FolderName As String
With xl
.hwnd = FindWindow("xlMain", vbNullString)
.Title = lstrcat("Bitte wählen Sie ein Verzeichnis", "")
.Flags = BIF_BROWSEINCLUDEFILES
End With
IDList = SHBrowseForFolder(xl)
If IDList  0 Then
FolderName = Space(256)
RVal = SHGetPathFromIDList(IDList, FolderName)
CoTaskMemFree (IDList)
FolderName = Trim$(FolderName)
FolderName = Left$(FolderName, Len(FolderName) - 1)
End If
GetAOrdner = FolderName
End Function



Public Sub Dateiliste_Hyperlinks_2()
Dim lngCount As Long
Dim lngZahl As Long
Dim lngZahl1 As Long
Dim strPfad As String
Dim blnMsg As Boolean
Dim strErweiterung As String
On Error GoTo Dateiliste_Hyperlinks_Error
lngZahl1 = 2
strPfad = GetAOrdner
If strPfad = "" Then Exit Sub
Select Case MsgBox("Sollen auch die Unterverzeichnisse des ausgewaehletn Ordners mit  _
ausgegeben werden?", _
vbYesNo Or vbQuestion Or vbDefaultButton1, "Unterverzeichnisse - Ja / Nein")
Case vbYes
blnMsg = True
Case vbNo
blnMsg = False
End Select
strErweiterung = InputBox("Bitte in der Art *.Erweiterung angeben", "Extension", "*.xls")
If strErweiterung = "" Then Exit Sub
Worksheets(1).Columns(2).Clear
With Application.FileSearch
.NewSearch
.LookIn = strPfad
.Filename = strErweiterung
.SearchSubFolders = blnMsg
.Execute
lngCount = .FoundFiles.Count
For lngZahl = 1 To lngCount
Worksheets(1).Hyperlinks.Add anchor:=Worksheets(1).Cells(lngZahl1, 2), Address:=. _
FoundFiles(lngZahl)
lngZahl1 = lngZahl1 + 1
Next lngZahl
End With
Columns.AutoFit
On Error GoTo 0
Exit Sub
Dateiliste_Hyperlinks_Error:
MsgBox "Error " & Err.Number & " (" & Err.Description & ")"
End Sub


2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: makro an Excel 2007 anpassen...
21.02.2009 18:58:49
Oberschlumpf
Beitrag-Funktion
Zeigt einen Hinweis darauf, dass ein Forum-Teilnehmer eine Frage hat, eine Antwort geben möchte, eine allgemeine Bemerkung geben möchte.
Syntax
Beitrag begrüßungsformel,
[ Name ], Text, Schlussformel,
Die Syntax der Beitrag-Funktion verwendet die folgenden Argumente:
Teil Beschreibung
begrüßungsformel Erforderlich. Ein Zeichenfolgenausdruck, der den landesüblichen Geflogenheiten entspricht.
Eine Auswahl möglicher Werte kann der folgenden Zeile entnommen werden.
"Hallo", "Hi", "Guten Tag"
Auch die Verwendung von umgangssprachlichen Angaben, wie z Bsp "Moin" oder "Tach" ist möglich.
name Optional. Ein Zeichenfolgenausdruck, der mit Hilfe des Argumentes
begrüßungsformel die gewünschte Zielgruppe einschränkt.
text Erforderlich. Ein Zeichenfolgenausdruck, der Auskunft über das eigentliche Anliegen des Fragenden gibt.
Der Inhalt ist frei wählbar, sollte jedoch freundlich und qualifiziert gestaltet werden.
Denn eine qualifizierte Antwort erfordert eine qualifizierte Frage.
schlussformel Erforderlich. Ein Zeichenfolgenausdruck, der den landesüblichen Geflogenheiten entspricht.
Eine Auswahl möglicher Werte kann der folgenden Zeile entnommen werden.
"Ciao", "Gruß", "viele Grüße", "Tschüss"
Auch hier ist die Verwendung von umgangssprachlichen Angaben, wie z Bsp "und wech..." möglich.
Zusätzlich möglich ist es, dass schlussformel den eigenen Namen und/oder den Wert aus name enthält.

Vielleicht versteht auch der Ersteller dieses Threads jetzt, dass ein Beitrag ohne Begrüßungs- und Schlussformel nicht wirklich vollständig ist.
In diesem Sinne... :-)
Thorsten
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige