Dateien mittels Makro in Excel suchen und anzeigen
Ich bin IT-Sicherheitsbeauftragter und möchte die Rechner der User nach verbotenen Dateien durchsuchen. Mein ehemaliger Chef hatte so etwas schon mal vorbereitet...
Hallo alle zusammen.
Ich habe da ein kleines Problem.
Wie schon kurz angesprochen bin ich IT-Sibe und möchte meine Arbeit ein wenig erleichtern.
Ich muss die Rechner der User überprüfen ob Daten vorhanden sind die eigentlich nicht auf einem
Dienstlichen Rechner zu suchen haben. Mein Ehemaliger Chef hat mal ein Excel-Makro geschrieben, wo durch einen
klick mehrere Daten gesucht werden, und aufgelistet. so das man einen Überblich hat wo eventuell Daten sein können die
nicht auf den Rechner gehören. Die Suche wir mit einem Button gestartet. Danach muss man das Ergebnis über einen anderen Button importieren und es werden zusätzliche Schaltflächen geöffnen wo dann die Pfade der Dateien stehen. Zusätzlich werden die Ergebnisse nochmal in 3 Dateien ausgegeben...
Ich habe das Makro ausgeführt ("suchen" Button) und bekomme jedesmal einen Fehler:
Entweder Anwendungs- oder Objektdefinierter Fehler
Beim Debugen markiert er mir immer die Zeile:
.Refresh BackgroundQuery:=False
Keine Ahnung was daran falsch sein soll. Ich muss auch leider zugeben das ich von VBA keine Ahnung habe. Ich habe lediglich
den Code übernommen. Ich hoffe mir kann jemand von euch weiterhelfen.
Hier ist nochmal der gesammte Code:
Sub Schaltfläche6_BeiKlick()
Open "c:\DATEI1.txt" For Output As #1 ' Datei zur Ausgabe öffnen.
Open "c:\DATEI2.txt" For Output As #2
Open "c:\DATEI3.txt" For Output As #3
With Application.FileSearch
Write #2,
Write #2, " Laufwerk C: "
Write #2, " ============"
Write #2,
.FileType = msoFileTypeAllFiles
.LookIn = "C:\"
.Filename = "*.exe"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .exe Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.com"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .com Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.mp3"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mp3 Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.avi"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .avi Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.mpg"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mpg Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.jpg"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .jpg Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.bmp"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .bmp Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.gif"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .gif Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.ppt"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .ppt Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.pps"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .pps Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.xls"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .xls Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
.Filename = "*.doc"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .doc Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
.Filename = "*.mdb"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mdb Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
' Laufwerk D:\
'====================================================================
Write #2,
Write #2, " Laufwerk D: "
Write #2, " ============"
Write #2,
.LookIn = "D:\"
.Filename = "*.exe"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .exe Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.com"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .com Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.mp3"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mp3 Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.avi"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .avi Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.mpg"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mpg Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.jpg"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .jpg Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.bmp"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .bmp Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.gif"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .gif Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.ppt"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .ppt Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.pps"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .pps Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.xls"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .xls Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
.Filename = "*.doc"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .doc Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
.Filename = "*.mdb"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mdb Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
Close
End With
End Sub
Sub Schaltfläche12_BeiKlick()
Sheets.Add
ActiveSheet.Select
ActiveSheet.Name = "Ergebnis"
Sheets("Ergebnis").Select
Sheets("Ergebnis").Move After:=Sheets(2)
Sheets.Add
ActiveSheet.Select
ActiveSheet.Move After:=Sheets(3)
ActiveSheet.Select
ActiveSheet.Name = "Spaß"
Sheets.Add
ActiveSheet.Select
ActiveSheet.Move After:=Sheets(4)
ActiveSheet.Select
ActiveSheet.Name = "PersDat"
Sheets("Ergebnis").Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\DATEI2.txt", _
Destination:=Range("A1"))
.Name = "DATEI2"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = xlWindows
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1)
.Refresh BackgroundQuery:=False
End With
Sheets("Spaß").Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\DATEI1.txt", _
Destination:=Range("A1"))
.Name = "DATEI1"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = xlWindows
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1)
.Refresh BackgroundQuery:=False
'Columns("A:A").Select
'Selection.Sort Key1:=Columns("A"), Order1:=xlAscending, Header:=xlGuess _
', OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
Sheets("PersDat").Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\DATEI3.txt", _
Destination:=Range("A1"))
.Name = "DATEI3"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = xlWindows
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1)
.Refresh BackgroundQuery:=False
Columns("A:A").Select
Selection.Sort Key1:=Columns("A"), Order1:=xlAscending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
Sheets("Ergebnis").Select
End Sub
Sub Schaltfläche13_BeiKlick()
'
' Schaltfläche13_BeiKlick Makro
'
'
Sheets("Ergebnis").Select
ActiveWindow.SelectedSheets.Delete
Sheets("Spaß").Select
ActiveWindow.SelectedSheets.Delete
Sheets("PersDat").Select
ActiveWindow.SelectedSheets.Delete
End Sub
Hallo alle zusammen.
Ich habe da ein kleines Problem.
Wie schon kurz angesprochen bin ich IT-Sibe und möchte meine Arbeit ein wenig erleichtern.
Ich muss die Rechner der User überprüfen ob Daten vorhanden sind die eigentlich nicht auf einem
Dienstlichen Rechner zu suchen haben. Mein Ehemaliger Chef hat mal ein Excel-Makro geschrieben, wo durch einen
klick mehrere Daten gesucht werden, und aufgelistet. so das man einen Überblich hat wo eventuell Daten sein können die
nicht auf den Rechner gehören. Die Suche wir mit einem Button gestartet. Danach muss man das Ergebnis über einen anderen Button importieren und es werden zusätzliche Schaltflächen geöffnen wo dann die Pfade der Dateien stehen. Zusätzlich werden die Ergebnisse nochmal in 3 Dateien ausgegeben...
Ich habe das Makro ausgeführt ("suchen" Button) und bekomme jedesmal einen Fehler:
Entweder Anwendungs- oder Objektdefinierter Fehler
Beim Debugen markiert er mir immer die Zeile:
.Refresh BackgroundQuery:=False
Keine Ahnung was daran falsch sein soll. Ich muss auch leider zugeben das ich von VBA keine Ahnung habe. Ich habe lediglich
den Code übernommen. Ich hoffe mir kann jemand von euch weiterhelfen.
Hier ist nochmal der gesammte Code:
Sub Schaltfläche6_BeiKlick()
Open "c:\DATEI1.txt" For Output As #1 ' Datei zur Ausgabe öffnen.
Open "c:\DATEI2.txt" For Output As #2
Open "c:\DATEI3.txt" For Output As #3
With Application.FileSearch
Write #2,
Write #2, " Laufwerk C: "
Write #2, " ============"
Write #2,
.FileType = msoFileTypeAllFiles
.LookIn = "C:\"
.Filename = "*.exe"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .exe Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.com"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .com Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.mp3"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mp3 Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.avi"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .avi Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.mpg"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mpg Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.jpg"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .jpg Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.bmp"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .bmp Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.gif"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .gif Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.ppt"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .ppt Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.pps"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .pps Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.xls"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .xls Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
.Filename = "*.doc"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .doc Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
.Filename = "*.mdb"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mdb Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
' Laufwerk D:\
'====================================================================
Write #2,
Write #2, " Laufwerk D: "
Write #2, " ============"
Write #2,
.LookIn = "D:\"
.Filename = "*.exe"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .exe Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.com"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .com Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.mp3"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mp3 Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.avi"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .avi Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.mpg"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mpg Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.jpg"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .jpg Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.bmp"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .bmp Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.gif"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .gif Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.ppt"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .ppt Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.pps"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .pps Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #1, .FoundFiles(i)
Next i
End If
.Filename = "*.xls"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .xls Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
.Filename = "*.doc"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .doc Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
.Filename = "*.mdb"
If .Execute(SortBy:=msoSortByFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
Write #2, "Es wurden " & .FoundFiles.Count & _
" .mdb Datei(en) gefunden."
For i = 1 To .FoundFiles.Count
Write #3, .FoundFiles(i)
Next i
End If
Close
End With
End Sub
Sub Schaltfläche12_BeiKlick()
Sheets.Add
ActiveSheet.Select
ActiveSheet.Name = "Ergebnis"
Sheets("Ergebnis").Select
Sheets("Ergebnis").Move After:=Sheets(2)
Sheets.Add
ActiveSheet.Select
ActiveSheet.Move After:=Sheets(3)
ActiveSheet.Select
ActiveSheet.Name = "Spaß"
Sheets.Add
ActiveSheet.Select
ActiveSheet.Move After:=Sheets(4)
ActiveSheet.Select
ActiveSheet.Name = "PersDat"
Sheets("Ergebnis").Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\DATEI2.txt", _
Destination:=Range("A1"))
.Name = "DATEI2"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = xlWindows
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1)
.Refresh BackgroundQuery:=False
End With
Sheets("Spaß").Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\DATEI1.txt", _
Destination:=Range("A1"))
.Name = "DATEI1"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = xlWindows
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1)
.Refresh BackgroundQuery:=False
'Columns("A:A").Select
'Selection.Sort Key1:=Columns("A"), Order1:=xlAscending, Header:=xlGuess _
', OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
Sheets("PersDat").Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\DATEI3.txt", _
Destination:=Range("A1"))
.Name = "DATEI3"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = xlWindows
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1)
.Refresh BackgroundQuery:=False
Columns("A:A").Select
Selection.Sort Key1:=Columns("A"), Order1:=xlAscending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
Sheets("Ergebnis").Select
End Sub
Sub Schaltfläche13_BeiKlick()
'
' Schaltfläche13_BeiKlick Makro
'
'
Sheets("Ergebnis").Select
ActiveWindow.SelectedSheets.Delete
Sheets("Spaß").Select
ActiveWindow.SelectedSheets.Delete
Sheets("PersDat").Select
ActiveWindow.SelectedSheets.Delete
End Sub
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 95254
Url: https://administrator.de/contentid/95254
Ausgedruckt am: 26.11.2024 um 14:11 Uhr
14 Kommentare
Neuester Kommentar
hallo,
als SiBe weisst du ja sicherlich, das du eigentlich ohne die Erlaubnis des Users und/oder des Betriebsrates keine solche Durchsuchung durführen darfst oder habe ich da was verpasst, das es nun doch erlaubt ist und wenn ja, unter welchen Voraussetzungen?
davon mal abgesehen...
mit welcher Excel-Version wurde das Makro erstellt und mit welcher Excel-Version versuchst du es zu starten?
z.B. kommt 2000 nicht mit XP oder 2003er Makros zurecht, so das das Makro umgebastelt werden müsste
als SiBe weisst du ja sicherlich, das du eigentlich ohne die Erlaubnis des Users und/oder des Betriebsrates keine solche Durchsuchung durführen darfst oder habe ich da was verpasst, das es nun doch erlaubt ist und wenn ja, unter welchen Voraussetzungen?
davon mal abgesehen...
mit welcher Excel-Version wurde das Makro erstellt und mit welcher Excel-Version versuchst du es zu starten?
z.B. kommt 2000 nicht mit XP oder 2003er Makros zurecht, so das das Makro umgebastelt werden müsste
angelegt werden sie wohl gleich am Anfang im Makro "Schaltfläche6_BeiKlick":
.Refresh BackgroundQuery:=False schlägt bei mir nur dann fehl, wenn die Datei nicht existiert
lass doch mal den ersten Teil des Makros laufen und guck dann mal nach, ob die Dateien überhaupt angelegt werden
eigentlich müssten sie das, denn das erste Makro läuft ja wohl ohne Fehler durch
Open "c:\DATEI1.txt" For Output As #1
Open "c:\DATEI2.txt" For Output As #2
Open "c:\DATEI3.txt" For Output As #3
lass doch mal den ersten Teil des Makros laufen und guck dann mal nach, ob die Dateien überhaupt angelegt werden
eigentlich müssten sie das, denn das erste Makro läuft ja wohl ohne Fehler durch
ich habe es so gemacht:
Extras -> Makro -> Visual Basic-Editor
doppelklick auf "Diese Arbeitsmappe" -> einfügen
dann klickst du einfach in das Makro "Schaltfläche6_BeiKlick" und drückst einfach F5
das Makro startet und ist irgendwann fertig
anschliessend gehst du ins Makro "Schaltfläche12_BeiKlick" udn drückst wieder F5
entweder es kommt wieder ein Fehler oder (hoffentlich) nicht
Extras -> Makro -> Visual Basic-Editor
doppelklick auf "Diese Arbeitsmappe" -> einfügen
dann klickst du einfach in das Makro "Schaltfläche6_BeiKlick" und drückst einfach F5
das Makro startet und ist irgendwann fertig
anschliessend gehst du ins Makro "Schaltfläche12_BeiKlick" udn drückst wieder F5
entweder es kommt wieder ein Fehler oder (hoffentlich) nicht