Vraag


Acties:
  • 0 Henk 'm!

  • ronaldutrecht
  • Registratie: Augustus 2016
  • Laatst online: 11-07-2024
Dag,

Tot voor kort kon ik altijd plaatjes en csv bestanden eenvoudig via Excel VBA uploaden naar mijn FTP.
Nu heb ik een eigen server en er is nu SFTP opgezet door de IT-er.

Ik kan nu niet meer automatisch uploaden. Iemand enig idee of dat nog wel kan naar SFTP?
Ik gebruikte voorheen bv deze code:

Dim TempChart As Variant
Dim ImageName1 As String
Dim ImageName As String
Dim FinalImagePath As String
Dim InRange As Range
Dim DiscName As String
Dim ftpLogin As String
Dim ftpPassword As String
Dim ftpPath As String
Dim a As Object
Dim fs As Object
Dim ftpSite As String
Dim TempFolderName As String


'---------------------------------------------------------------------------------
'set variable parameters
TempFolderName = "zqqftptemp"
DiscName = "C" 'put the name of disc for temporary files, for example "D".
ftpSite = "xxxxxxx 'put the website name, for example "mywebsite.com"
ftpPath = "/articles" 'put the path to ftp folder, for example "/public_html/uploaded_files/"
ftpLogin = "xxxxx" 'put your ftp login, for example "john123"
ftpPassword = "xxxxxxx" 'put your ftp password, for example "pass123"
'---------------------------------------------------------------------------------

Application.ScreenUpdating = False

'copy the appropriate range
Workbooks("Outlook lists.xlsm").Activate
Worksheets("csv").Range("A1:P11").Copy


'export as an image
MkDir DiscName & ":\" & TempFolderName & "\"
FinalImagePath = DiscName & ":\" & TempFolderName & "\" & "outlooks.csv"

'add new workbook and paste copied range
Workbooks.Add
ActiveSheet.Paste


Alvast heel erg bedankt,

Gr Ronald

Alle reacties


Acties:
  • +1 Henk 'm!

  • g0tanks
  • Registratie: Oktober 2008
  • Laatst online: 09:55

g0tanks

Moderator CSA
Je code is niet volledig want er staat niets in wat verbinding maakt met de ftp-server.

Maargoed, waarschijnlijk heb je wel andere code nodig omdat sftp wel echt verschilt van ftp. Vaak wordt ook gebruik gemaakt van een externe applicatie zoals WinSCP omdat er volgens mij geen goede native Windows ondersteuning is.

Ultrawide gaming setup: AMD Ryzen 7 2700X | NVIDIA GeForce RTX 2080 | Dell Alienware AW3418DW


Acties:
  • 0 Henk 'm!

  • ronaldutrecht
  • Registratie: Augustus 2016
  • Laatst online: 11-07-2024
bedankt, het is ook maar een deel vd code inderdaad.
Mbt WinSCP, weet je daar een voorbeeld zo'n koppeling met VBA online van?

Alvast bedankt (ik ben nogal een leek op dit gebied)

Acties:
  • +1 Henk 'm!

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Je kunt misschien bijv Shell() gebruiken om de juiste, in VBA samen te stellen, commandlinefunctie aan te roepen. Bijvoorbeeld met PuTTY pscp

Edit: zoeken bij google naar 'VBA SFTP' --> https://stackoverflow.com...4928/sftp-upload-with-vba ;)

[ Voor 33% gewijzigd door F_J_K op 30-03-2020 15:41 ]

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


Acties:
  • +1 Henk 'm!

  • Smulderke
  • Registratie: Juni 2014
  • Laatst online: 06:54
Ik heb zoiets ook op moeten lossen. Ik gebruik hiervoor winscp. Dit is eenvoudig te scripten met een scriptfile.

Vanuit VBA kun winscp starten via het Shell commando

code:
1
Shell "padnaarwinscp\winscp.exe" & " /script=" & TempScriptFile


Op internet kun je vast wel vinden hoe je zo'n script file aanmaakt.

Acties:
  • 0 Henk 'm!

  • ronaldutrecht
  • Registratie: Augustus 2016
  • Laatst online: 11-07-2024
bedankt, ik ga er induiken

Acties:
  • 0 Henk 'm!

  • g0tanks
  • Registratie: Oktober 2008
  • Laatst online: 09:55

g0tanks

Moderator CSA
Aangezien je gelijk een nieuw topic hebt geopend over vrijwel hetzelfde onderwerp gooi ik deze op slot.

Ultrawide gaming setup: AMD Ryzen 7 2700X | NVIDIA GeForce RTX 2080 | Dell Alienware AW3418DW

Pagina: 1

Dit topic is gesloten.