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

Laufzeitfehler 52

Laufzeitfehler 52
31.05.2022 10:58:01
Lena
Liebe Community,
ihr seid meine letzte Rettung. Meine Ausgangssituation ist folgende:
Auf einem Netzlaufwerk werden wöchentlich Zeiterfassungen in Excel abgelegt. Diese sollen zu einer Master-Datei zusammengefasst werden. Jede Zeiterfassungs-Datei soll in einem neuen Tabellenblatt dargestellt werden, sodass anschließend eine Gesamtauswertung stattfinden kann.
Das Problem: Die Auswertung ist nicht für mich selbst, ich habe keinen Zugriff auf das besagte Netzlaufwerk und konnte den Code bei mir entsprechend nicht testen. Nun habe ich trotzdem die "Master-Datei" mit dem entsprechenden Code an meinem PC erstellt und dem Anwender die Datei per Mail zugeschickt. Wenn er diese auf seinem PC öffnet und das Makro ausführt (Zugriff auf das Netzlaufwerk besteht selbstverständlich), bekommt er die Fehlermeldung "Laufzeitfehler '52': Dateiname oder -nummer falsch" angezeigt.
Seit Tagen durchforste ich bereits dieses und diverse andere Foren, habe die Codezeile, an der das Makro abbricht (s. Code unten), immer wieder angepasst, leider ohne Erfolg. Ich bin wirklich ratlos! Liegt es daran, dass ich die Master-Datei von einem PC ohne Netzwerk-Zugriff aus erstellt habe? Muss der Anwender eine neue Datei erstellen und den Code in VBA hineinkopieren?
Vielen, vielen Dank für eure Hilfe, ich hoffe ihr habt einen Rat.
Beste Grüße
Lena

Dim strDateiname As String
Dim strVerzeichnis As String
strVerzeichnis = "\\srv-dc01\Personal\Arbeitszeiterfassung\Export_Schichten\"
Application.EnableEvents = False
Application.ScreenUpdating = False
If strVerzeichnis  "" Then
strDateiname = Dir(CStr(strVerzeichnis & "*.xlsx")) ' ""
Workbooks.Open Filename:=strVerzeichnis & strDateiname
ActiveWorkbook.Worksheets(4).Copy after:=ThisWorkbook.Worksheets(ThisWorkbook.Worksheets.Count)
ThisWorkbook.Worksheets(ThisWorkbook.Worksheets.Count).Name = Application.Substitute(strDateiname, ".xlsx", "")
Workbooks(strDateiname).Close False
strDateiname = Dir
Loop
Application.EnableEvents = True
Application.ScreenUpdating = True
End If
ThisWorkbook.Worksheets("Tabelle1").Select
MsgBox "Time Reports wurden erfolgreich geladen."
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 52
31.05.2022 11:06:15
Oberschlumpf
Hi Lena,
CStr() brauchst du nicht, weil du ja strDateiname schon als String deklariert hast, und "*.xlsx" oder jeder andere Text ist ja an sich schon ein String.
Somit wandelst du den "Zusammenbau" strDateiname & "*.xlsx", was ja, wie gesagt schon ein String ist, mit CStr() in einen...String um :-)
änder mal diese Zeile...

strDateiname = Dir(CStr(strVerzeichnis & "*.xlsx"))
...um in

strDateiname = Dir(strVerzeichnis & "*.xlsx")
Vielleicht hilft das schon.
Wenns nich hilft, musst - du - wohl mal am Computer des Kollegen sitzen (mit seiner Anmeldung, mit seinen Zugriffsrechten!)
Ciao
Thorsten
Anzeige
AW: Laufzeitfehler 52
31.05.2022 12:58:45
Lena
Hallo Torsten,
wow, danke für deine schnelle Antwort! Leider war es die String-Deklaration noch nicht. Mich an den PC des Kollegen zu setzen ist aufgrund der räumlichen Entfernung schwierig, aber wir probieren es mal per TeamViewer aus.
Nochmals danke und beste Grüße!
Lena
AW: Laufzeitfehler 52
31.05.2022 17:38:13
Oberschlumpf
Hi Lena,
irgdwie versteh ich das nicht, dass es zu dem Fehler kommt.
Dein Code sieht eigtl "sauber" aus; bis auf Cstr() würd ich den so 1:1 übernehmen :-)
Dein Kollege soll mal im Direktfenster diesen Befehl ausprobieren:

MsgBox dir("\\srv-dc01\Personal\Arbeitszeiterfassung\Export_Schichten\*.xlsx")
Wenns da nich zu nem Fehler kommt, muss in der MsgBox ein Dateiname angezeigt werden.
Dann weißt du wenigstens schon mal, dass der DIR-Befehl funktioniert; aber wenn auch da schon Fehler, dann könnte es an den NAS-Zugriffsrechten liegen.
Teamviewer ist fast ne gute Idee! :-)
Hatte ich auch jahrelang benutzt...mit nem Kumpel...auch aus Berlin :-) Aber die Entwickler hatten mich dann gesperrt :-PPP, weil die der Meinung waren, ich nutze TV - nicht - privat...haha^^
Wir sind dann umgestiegen auf AnyDesk - macht das Gleiche wie TV, is aber gratis^^ :-)
(aber naja, vllt dürft ihr ja nich irgdwelche Software installieren)
Auf jeden Fall aber:
Bitte gib hier mal Feedback, wenn ihr den Fehler gefunden habt, woran es gelegen hat.
Ciao
T-h-orsten :-P aus HH ;-)
Anzeige
AW: Laufzeitfehler 52
31.05.2022 18:02:21
onur
Der Kollege soll diese Datei starten und damit den Pfad, wo sich die zu öffnende Datei befindet, auslesen.
Dann nimmst du eben diesen Pfad.
Im Netzwerk ist das, was Windows als Pfad bzw Laufwerksname anzeigt, nicht unbedingt das Selbe, wie der Name, der intern benutzt wird.
https://www.herber.de/bbs/user/153349.xlsm

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige