shrani datoteko na FTP

Pomoč pri izdelavi makrov
Odgovori
DusanS
Prispevkov: 31
Pridružen: To Jul 26, 2005 11:16 am

shrani datoteko na FTP

Odgovor Napisal/-a DusanS »

Pozdravljeni,

Ali se da z makrom, ki ke pred tem že odprl nov excelov zvezek (npr podatki.xls), ta zvezek shraniti na FTP strežnik. Za dostop do FTP sta potrbna up. ime in geslo, oba podatka pa sta znana?

Se v naprej zahvaljujem za kakršno koli pomoč.
admin
Site Admin
Prispevkov: 3687
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Direkten "pogovor" z FTP strežnikom bi zahteval kar veliko sistemskih funkcij in bi stvar zelo zapletel. Obstaja pa FTP ukaz, ki ga okna znajo izvesti in rešitev, ki vam jo podajam je ravno v tem, da najprej ustvarim FTP ukaze ukaze pošiljanje datoteke in nato preko FTP te ukaze tudi izvedem:

Koda: Izberi vse

'
' www.matjazev.net
'
'    marec 09
'
Sub PosljiPrekoFTP(APot As String, ADatoteka As String, ABinarno As Boolean)
    Dim sSITE As String: sSITE = "ftp.siol.net"     ' <-- FTP naslov
    Dim sUSER As String: sUSER = "krneki"           ' <-- uporabniško ime
    Dim sPASS As String: sPASS = "9wejk4"           ' <-- geslo
    Dim sTmpDat As String: sTmpDat = "c:\ukazi_ftp" ' <-- naslov začasne datoteke
   
    ' ustvarim FTP ukazno datoteko
    Open sTmpDat & ".txt" For Output As #1
    Print #1, "open " & sSITE
    Print #1, sUSER
    Print #1, sPASS
    If (ABinarno) Then
      Print #1, "binary"
    Else
      Print #1, "text"
    End If
    Print #1, "cd " & APot
    Print #1, "send " & APot & "\" & ADatoteka
    Print #1, "bye"
   
    Close #1
   
    Open sTmpDat & ".bat" For Output As #1
    Print #1, "ftp -s:" & sTmpDat & ".txt"
    Close #1
   
    Shell sTmpDat & ".bat"
End Sub
Funkcija sprejme 3 parametre. Prvi parameter je pot do mape, ki se mora končati brez poševnice, drug parameter je ime datoteke, ki jo želite poslati (in se seveda mora nahajati v prej omenjeni mapi), tretji parameter pa pove ali želite to datoteko poslati v binarni ali tekstualni obliki.

Bodite pozorni na to, da makro za lastne potrebe na C disku ustvari dve začasni datoteki c:\ukazi_ftp.txt in c:\ukazi_ftp.bat!

Seveda pa morate v makru ustrezno popraviti tudi naslov FTP strežnika ter uporabniško ime in geslo!

Primer ukaza:

Koda: Izberi vse

  PosljiPrekoFTP "c:\moji dokumenti", "porocilo.xls", true
lp,
Matjaž Prtenjak
Administrator
Odgovori