..|| Blog || Produkti/Storitve || MExcel || MDodatki || 300 nasvetov ||..

shrani datoteko na FTP

Pomoč pri izdelavi makrov

shrani datoteko na FTP

OdgovorNapisal/-a DusanS » Če mar 12, 2009 11:19 pm

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č.
DusanS
 
Prispevkov: 31
Pridružen: To jul 26, 2005 11:16 am



Matjazev.NET
 

OdgovorNapisal/-a admin » Pe mar 13, 2009 8:25 am

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
admin
Site Admin
 
Prispevkov: 3525
Pridružen: Sr jul 20, 2005 10:06 pm


Vrni se na VBA

Kdo je prisoten

Po forumu brska: 0 registriranih uporabnikov in 3 gostov

cron