Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/08/2011, 16h50   #1
Invité de passage
 
Olivier MAMDY
Inscription : avril 2010
Messages : 4
Détails du profil
Informations personnelles :
Nom : Olivier MAMDY

Informations forums :
Inscription : avril 2010
Messages : 4
Points : 2
Points : 2
Par défaut Test de connexion ODBC au démarrage d'access

Bonjour
Avec une base access 2010 je me connecte avec au choix 2 liaisons odbc soit sur SQLEXPRESS en local soit sur SQL server ...

Quand je suis en mode déconnecté, j'ai besoin de me connecter à la base locale sqlexpress. je souhaiterais donc que l'application test à l'ouverture si je suis en local ou pas et me monte la connexion odbc qui va bien ...

J'ai mis ce code dans un formulaire au démarrage mais le test n'a pas lieu ... l'appli essaye de s'ouvrir sur la connexion odbc sql server qui est par défaut et comme je ne suis pas connecté elle s'arrête et m'affiche un beau message "ODBC echec de connexion...."

Pourriez vous me dire quel code pourrait tester ma connexion et où placer le placer ?
J'ai bien penser mettre par défaut une connexion locale odbc mais tous mes utilisateurs ne travaillent pas forcément en local
Merci d'avance

Mon code :
'
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
'************************************************************
'MISE A JOUR CONNEXION ODBC EN FONCTION DU TYPE DE CONNEXION
'*************************************************************
'si l 'utilisateur connecté est en local (gesbac) on le connecte à la base de donnée locale sur SQL Express
'sinon on le connecte au serveur SQL
    Dim sChemin As String
    Dim newConnectionString As String
    Dim db As DAO.Database
    Dim tb As DAO.TableDef
    Set db = CurrentDb
If Environ("USERDOMAIN") = "CG67" Then
    newConnectionString = DLookup("[ODBC_SERVEUR]", "dbo_T_ODBC", "[id_ODBC]=1") 'valeur de la chaine de connexion au serveur SQL stockée dans la table T_ODBC
    Me.Mode = "SQL"
    Me.Mode2 = "SQL"
Else
    newConnectionString = DLookup("[ODBC_LOCAL]", "dbo_T_ODBC", "[id_ODBC]=1") 'valeur de la chaine de connexion à la base locale stockée dans la table ODBC
    Me.Mode = "LOCAL"
    Me.Mode2 = "LOCAL"
 
End If
 
    For Each tb In db.TableDefs
        If Left(tb.Connect, 4) = "ODBC" Then
            tb.Connect = newConnectionString
            tb.RefreshLink
            Debug.Print "Refreshed ODBC table " & tb.Name
        End If
    Next tb
    Set db = Nothing
Oliv'67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/08/2011, 18h31   #2
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 619
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 619
Points : 30 959
Points : 30 959
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Bonjour

Je te propose une autre méthode.

En effet, ton serveur est un disque dur externe, donc tu pourrais tester en t'aidant de cela : http://warin.developpez.com/access/fichiers/#LI-B

Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.

Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h04.


 
 
 
 
Partenaires

Hébergement Web