zuerst wünsche ich euch Frohes Neues.
ich habe diese Makro. Es funktioniert bis Dateien geöffnet werden müssen. Irgendwie wird das Pfad nicht anerkannt.
Workbooks.Open "X:\Datengrundlage\" & i & ".xls"
Hätte jemand eine Idee, warum die Fehlermeldung bezüglich Pfad kommt?
Danke schön im Voruas.
Sub Daten_aktualisieren()
' ' Hinweis zum Makrostart
Dim Speicherpfad As String
' Bildschirmaktivität aus
Application.ScreenUpdating = False
Application.DisplayAlerts = False
If MsgBox("Wollen Sie Datenaktualisieren?", vbYesNo) = vbNo Then
MsgBox ("Durch Anwender beendet")
Exit Sub
Else
A = InputBox("Anzahl der Datensätze", "", "0")
If A = 0 Then
MsgBox ("Anwendung beendet, da Eingabe von 0")
Exit Sub
Else
If MsgBox("Startet ein neuer Auswertezeitraum?", vbYesNo) = vbYes Then
Windows("Master.xlsm").Activate
Sheets("Datengrundlage").Select
ActiveSheet.Range("$A$1:$S$1").AutoFilter Field:=19, Criteria1:=Array( _
"in Bearbeitung", "in Abnahme", "in Prüfung"), Operator:=xlFilterValues
Range("A2:BY60000").Select
Selection.Delete
With Sheets("Datengrundlage")
If .FilterMode Then
.ShowAllData
End If
End With
ActiveWorkbook.Worksheets("Datengrundlage").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Datengrundlage").AutoFilter.Sort.SortFields.Add _
Key _
:=Range("T:T"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortTextAsNumbers
With ActiveWorkbook.Worksheets("Datengrundlage").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
LZeileA = ActiveSheet.Cells(40000, 19).End(xlUp).Row
Else
' Abfrage nach Anzahl der Datein
Windows("Master.xlsm").Activate
Sheets("Datengrundlage").Select
LZeileA = ActiveSheet.Cells(40000, 19).End(xlUp).Row
End If
' Datei i öffen
For i = 1 To A
Workbooks.Open "X:\Datengrundlage\" & i & ".xls"
Windows(i & ".xls").Activate
With Sheets(" - DATA - ")
If .FilterMode Then
.ShowAllData
' Bereich A5 bis AW (Reportbereich) bereinigen für aktuelle Daten aus DB-Report
End If
End With
Range("A2:BY500").Select
Selection.Copy
Windows("Master.xlsm").Activate
Sheets("Datengrundlage").Select
Range("A" & LZeileA + 1).Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveWorkbook.Worksheets("Datengrundlage").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Datengrundlage").AutoFilter.Sort.SortFields.Add _
Key _
:=Range("T:T"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortTextAsNumbers
With ActiveWorkbook.Worksheets("Datengrundlage").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
LZeileA = ActiveSheet.Cells(40000, 19).End(xlUp).Row
Workbooks(i & ".xls").Close
Next i
Windows("Master.xlsm").Activate
Sheets("Datengrundlage").Select
End Sub