kann mir jemand einen praktikablen Weg zeigen wie man es am besten anstellt, wenn man eine Datei aus VBA/Excel heraus per FTP auf dem Server beim Provider uploaden möchte?
Herzlichen Dank für jeden HInweis von euch.
Emil
Sub trans()
Set wshshell = CreateObject("WScript.Shell")
wshshell.Run "ftp -v -n -s:c:\Temp\trans.txt deinRechnername"
End Sub
Um eine Datei per FTP aus Excel heraus mit VBA hochzuladen, folge diesen Schritten:
VBA-Editor öffnen:
ALT + F11
, um den VBA-Editor zu starten.Neues Modul erstellen:
Einfügen > Modul
.VBA-Code einfügen:
Sub FTPUpload()
Dim wshshell As Object
Set wshshell = CreateObject("WScript.Shell")
wshshell.Run "ftp -v -n -s:c:\Temp\trans.txt deinRechnername"
End Sub
Textdatei erstellen:
trans.txt
im Verzeichnis C:\Temp
und füge den folgenden Inhalt ein:user deinuser deinpasswort
ascii
lcd C:\TEMP
put /scripts/stale.txt stalealarm.txt
bye
Code ausführen:
FTPUpload
aus, um die Datei auf den Server hochzuladen.Fehler: „Konnte Verbindung zum Server nicht herstellen“
Fehler: „Anmeldung fehlgeschlagen“
trans.txt
richtig eingegeben sind.Fehler: „Datei nicht gefunden“
trans.txt
.Wenn du eine andere Methode für den FTP Upload bevorzugst, kannst du auch folgende Optionen nutzen:
Excel Add-Ins: Es gibt zahlreiche Add-Ins für Excel, die FTP-Funktionen bieten, ohne dass du VBA verwenden musst.
PowerShell: Du kannst PowerShell-Skripte verwenden, um Dateien auf einen FTP-Server hochzuladen. Diese Methode bietet mehr Flexibilität.
Hier ist ein einfaches Beispiel für das Hochladen einer Datei:
stale.txt
im Verzeichnis C:\TEMP
existiert.Fehlerprotokollierung: Füge Fehlerbehandlungsroutinen in deinen VBA-Code ein, um Probleme beim Upload besser zu diagnostizieren.
Sicherheit: Achte darauf, sensible Informationen wie Benutzernamen und Passwörter nicht in Klartext zu speichern.
Automatisierung: Du kannst den FTP Upload in regelmäßigen Abständen automatisieren, indem du das Makro über die Windows Aufgabenplanung ausführst.
1. Kann ich auch mehrere Dateien gleichzeitig hochladen?
Ja, du kannst mehrere put
-Befehle in deiner trans.txt
-Datei hinzufügen, um mehrere Dateien gleichzeitig hochzuladen.
2. Welche Excel-Version benötige ich für diesen VBA-Code?
Der oben angegebene VBA-Code funktioniert in den meisten modernen Excel-Versionen, einschließlich Excel 2010 und neuer.
3. Gibt es eine Möglichkeit, FTP-Uploads ohne VBA durchzuführen?
Ja, du kannst Online-Dienste oder FTP-Clients verwenden, um Dateien hochzuladen, ohne VBA zu verwenden.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen