Newsgroup: it.comp.appl.access
Titolo: E' possibile loggarsi su un server via VBA Access?

Sto cercando di risolvere un problema con Access 2002.
Ho un database gestione.mdb (sul computer "utente") con linkate 3 
tabelle prese dal server \\192.168.xxx.xxx\C\ordini\entrate.mdb.
Il problema è che il server è protetto da password ed ogni volta devo 
fare finta di importare una tabella per poter inserire "nome utente" e 
"password" del server.
Vorrei riuscire a lanciare una procedura automatica VBA che mi connetta 
al server passandogli "nome utente" e "password".
Grazie dell'aiuto
Dario

 Dario
Se ho capito bene, credo che tu possa mappare il percorso
del server come risorsa di rete ovviamente passando User e Password,
a questo punto Linky le tabelle normalmente.
Per mappare il Server prova queste routine WMI
' Mappa una Risorsa di RETE
Public Function MapNetworkDrive(sServer As String, User as string,
Password as string) As String
   Dim WshNetwork
   Dim allDrives
   Dim i                   As Integer
   Dim x                   As Integer
 
   Dim AlreadyConnected    As Boolean
   Dim mDrive              As String
 
   Set WshNetwork = CreateObject("WScript.Network")
   Set allDrives = WshNetwork.EnumNetworkDrives()
   ' Anche quě cicleremo le lettere Mappate con la speranza
   ' di trovarne una libera e partiremo da ASCII 68=D
   AlreadyConnected = False
   For x = 68 To 90
      mDrive = Chr(x)
      AlreadyConnected = DriveExist(mDrive)
      If AlreadyConnected = False Then
         ' Impostare la PASSWORD e lo USERNAME
         ' La PWD puň essere passata come vbNullstring
         WshNetwork.MapNetworkDrive mDrive & ":", sServer, User,
Password
         'MsgBox "Drive " & DriveLetter & " connected successfully."
         MapNetworkDrive = mDrive
         Set WshNetwork = Nothing
         Set allDrives = Nothing
         Exit Function
      End If
   Next
   Set WshNetwork = Nothing
   Set allDrives = Nothing
   MapNetworkDrive = vbNullString
   MsgBox "Attenzione la risorsa Server non č mappata", vbCritical,
"AVVISO"
End Function
Public Function RemoveMapNetwork() As Boolean
   Dim WshNetwork
   Dim allDrives
   Set WshNetwork = CreateObject("WScript.Network")
   Set allDrives = WshNetwork.EnumNetworkDrives
 
   ' Se non esiste nessuna risorsa mappata non proseguo
   If allDrives.Count = 0 Then
      MapDrive = vbNullString
   End If
   If DriveExist(MapLetter) Then WshNetwork.RemoveNetworkDrive MapDrive
Exit_Here:
   Set WshNetwork = Nothing
   Set allDrives = Nothing
End Function
Public Function DriveExist(strLetter As String) As Boolean
   Dim fso, d, dc
   DriveExist = False
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set dc = fso.Drives
   For Each d In dc
   Set d = fso.GetDrive(d.DriveLetter)
       If d.DriveLetter = strLetter Then
          DriveExist = True
          Exit Function
       End If
   Set d = Nothing
   Next
   Set d = Nothing
   Set dc = Nothing
   Set fso = Nothing
End Function
Ciao
@Alex
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

    MsgBox "Attenzione la risorsa Server non è mappata", vbCritical,

Spero che funzioni. Domani al lavoro proverò.
Non so se sia un problema il fatto che il server non ha in condivisione 
niente: devo entrare con una connessione amministrativa (\\numero 
server\C$\ordini\spese.mdb).
Il bello è che tutto si risolverebbe mettendo in condivisione la 
cartella contenete il database spese.mdb, ma l'amministratore mi ha 
detto che non vuole farlo non ho ben capito il perché.
Grazie
Dario

 ha scritto nel messaggio 
news:uvMGf.170044$65.46...@twister1.libero.it...

Con script WSH/VBScript:
'---
Sub wshMapDrive()
On Error Resume Next
Dim WshNet
Set WshNet = CreateObject("Wscript.Network")
WshNet.MapNetworkDrive "Z:", "\\nomePc\risorsaDaMappare", , "utente", 
"password"
If Err.Number = 0 Then
    MsgBox "Ok"
Else
    MsgBox "non Ok"
End If
Set WshNet = Nothing
On Error GoTo 0
End Sub
Sub wshUnMapDrive()
Dim WshNet
Set WshNet = CreateObject("Wscript.Network")
WshNet.RemoveNetworkDrive "Z:"
Set WshNet = Nothing
End Sub
'---
Ciao.
-- 
Sergio MAZZA 

 Con script WSH/VBScript:
E io che ho postato....?
Pensa che volevo postare quello API, poi ho inserito
quello WBS...!!!
;-/


 @Alex
Eheee... E mi č partito il colpo prima di vedere le risposte...
Ciao.
-- 
Sergio MAZZA 


Grazie a tutti dell'aiuto. Purtroppo oggi non ho ancora potuto provare 
le soluzioni che mi avete proposto.
Mi porterò a casa una copia dei DB e vedrò di provarle sul mio PC casalingo.
Dario

Oggi sono finalemtente riuscito a provare il codice: funziona perfettamente.
Grazie a tutti
Dario