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

Upload Workbooks auf SharedDrive

Upload Workbooks auf SharedDrive
17.09.2020 12:45:11
Norbert
Hallo zusammen,
ich versuche etwas zu machen und bin mir nicht sicher, ob es mit VBA möglich ist. Ist es möglich Workbooks via VBA auf ein SharedDrive hochzuladen?
Zum Hintergrund: Ich habe einen Ordner auf meinen PC mit mehreren Dateien, welche mit ZBA beginnen und dann druchnummeriert sind, z. B. ZBA001, ZBA002, ZBA003 usw.
Diese Ordner Struktur findet sich auch auf einem SharedDrive wieder, also Pfad/ZBA001, Pfad/ZBA002.
Kann ich mit einem Makro ansteuern, dass die Dateien aus meinem loklaen Ordner auf meinem PC in den SharedDrive "Pfad" hochgeladen werden und die Dateien in die dazugehörigen Ordner geladen werden? Das Makro müsste dann ja meinen lokalen Ordner durchaufen, die vierte bis sechse Position am Anfang des Dateinamens erfassen und in den dazugehörigen Ordner auf dem SharedDrive hochladen und zur nächsten Datei übergehen um das selbe zu machen, oder? Vielen Dank im Voraus für jede Einschätzung/Tipps/Lösungsvorschläge bzw. Code.
Beste Grüße
Norbert

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Upload Workbooks auf SharedDrive
17.09.2020 15:52:42
Yal
ohne Garantie/Gewährleistung.
Option Explicit
Sub Dateien_zuordnen()
'Unter verwendung von Microsoft Scripting Runtime (siehe Extra >> Verweise)
Dim FSO As New FileSystemObject
Dim D As File
Dim QV As Folder 'QuellVerzeichnis
Dim ZV As Folder 'Zielverzeichnis
Const cQuellVerz = "C:\MeinLokalerPfad\"
Const cZeilverz_Basis = "\\...\abc\def\"
Set QV = FSO.GetFolder(cQuellVerz)
If QV Is Nothing Then
MsgBox "Fehler beim Zugriff auf Verzeichnis """ & cQuellVerz & """.", vbCritical +  _
vbOKOnly, "Fehler"
End If
For Each D In QV.Files
If Left(D.Name, 3) = "ZBA" Then
Select Case LCase(Right(D.Name, Len(D.Name) - InStrRev(D.Name, ".")))
Case "xlsx" ', "xlsm"
Set ZV = Nothing
Set ZV = FSO.GetFolder(cZielverz_Basis & Left(D.Name, 5))
If ZV Is Nothing Then Debug.Print "fehler mit " & cZielverz_Basis & Left(D.Name, _
5)
FSO.MoveFile D.Path, ZV.Path & "\" & D.Name
End Select
End If
Next
Set QV = Nothing
Set ZV = Nothing
End Sub
Viel Erfolg
Yal
Anzeige
AW: Upload Workbooks auf SharedDrive
17.09.2020 17:04:11
Norbert
@Yal: vielen Dank für den Code. Leider erhalte ich eine Fehlermeldung an der Stelle wo FSO as new FileSystemObject deklariert wird.
Userbild
Was kann da der Fehler sein? Ich habe deinen Code 1:1 kopiert und erhalte die Fehlermeldung direkt bei der Variablendeklaration.
@Armin: Tatsächlich sollen alle Files die sich in dem Ordner befinden, in welchem auch das Makro liegt, hochgeladen werden. Die Dateien sind bereits benannt und liegen in dieser Struktur vor. Es geht also wirklich nur um den Upload und der Zuordnung zu den Ordnern in welche die einzelnen Dateien gehören.
Besten Dank für euren Input.
Beste Grüße
Norbert
Anzeige
AW: Upload Workbooks auf SharedDrive
17.09.2020 18:18:31
ralf_b

Unter verwendung von Microsoft Scripting Runtime (siehe Extra >> Verweise)..... 
das hast du doch gelesen und verstanden?
AW: Upload Workbooks auf SharedDrive
17.09.2020 15:54:34
Armin
Hallo Norbert,
natürlich geht das. Aber dazu müsste man folgendes wissen:
1.wie soll das kopieren ausgelöst werden oder über ein Auswahl z. Bsp.: ordner kopieren (alle File)
ist günstig weil du den überblick behälst.
2.werden die Nr. vom Namen erst wärend des kopieren erzeugt oder sind diese File mit Nr. schon vorhanden?
Gruß Armin
AW: Upload Workbooks auf SharedDrive
20.09.2020 00:45:03
Norbert
Hallo,
die Aktivierung von Microsoft Scripting Runtime habe ich tatsächlich üerblesen - entschuldigung, kannte ich noch nicht. Leider läuft die Zuordnung der Workbooks zu den Ordnern bei dem Code von YAL
auf Fehler. Ich habe alles mögliche ausprobiert, leider ohne Erfolg:
Set TF = FSO.GetFolder(cTargetFolder_Basis & Left(D.Name, 5))
Wieso wird an dieser Stelle nicht an den Pfad die ersten 5 Positionen des Dateinamens angehägt? "&" zum Verbinden ist doch richtig? Ich sehe im Debugger, dass der String nach "&" leer ist, zuvor wird der Dateiname mit den ersten 5 Positionen aber verarbeitet. Ist es möglich etwas anderes als "&" für die Verbindung zu verwenden? Dann könnte ich das wenigstens versuchen.
Danke an alle.
Beste Grüße
Norbert
Anzeige
AW: Upload Workbooks auf SharedDrive
20.09.2020 02:45:40
ralf_b
wenn der string leer ist ,dann nützt dir eine andere verbindung der texte auch nichts.
AW: Upload Workbooks auf SharedDrive
21.09.2020 22:59:21
Norbert
Hat geklappt - danke an alle für eure Hilfe. Das ist ein super Forum!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige