IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Creation d'un lien ODBC dans VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    307
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Août 2006
    Messages : 307
    Par défaut Creation d'un lien ODBC dans VBA
    Salut a tous,

    Je souhaiterais creer un lien ODBC par VBA dans Excel.

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    Option Explicit
     
    'Constant Declaration
    Private Const ODBC_ADD_DSN = 1        ' Add data source
    Private Const ODBC_CONFIG_DSN = 2     ' Configure (edit) data source
    Private Const ODBC_REMOVE_DSN = 3     ' Remove data source
    Private Const vbAPINull As Long = 0  ' NULL Pointer
     
    'Function Declare
    #If Win32 Then
     
        Private Declare Function SQLConfigDataSource Lib "ODBCCP32.DLL" _
        (ByVal hwndParent As Long, ByVal fRequest As Long, _
        ByVal lpszDriver As String, ByVal lpszAttributes As String) _
        As Long
    #Else
        Private Declare Function SQLConfigDataSource Lib "ODBCINST.DLL" _
        (ByVal hwndParent As Integer, ByVal fRequest As Integer, ByVal _
        lpszDriver As String, ByVal lpszAttributes As String) As Integer
          #End If
     
     
    Private Sub CommandButton1_Click()
     
    Dim strDriver As String
    Dim strAttributes As String
     
    #If Win32 Then
        Dim intRet As Long
    #Else
        Dim intRet As Integer
    #End If
     
     
          'Set the driver to SQL Server because it is most common.
          strDriver = "SQL Server"
          'Set the attributes delimited by null.
          'See driver documentation for a complete
          'list of supported attributes.
          strAttributes = "SERVER=atlas" & Chr$(0)
          strAttributes = strAttributes & "DESCRIPTION=Test_map" & Chr$(0)
          strAttributes = strAttributes & "DSN=DSN_TEMP" & Chr$(0)
          strAttributes = strAttributes & "USER=crmtst" & Chr$(0)
          strAttributes = strAttributes & "DATABASE=CRM_1" & Chr$(0)
          'To show dialog, use Form1.Hwnd instead of vbAPINull.
     
          intRet = SQLConfigDataSource(vbAPINull, ODBC_ADD_DSN, _
          strDriver, strAttributes)
     
          MsgBox ("intRet = " + strAttributes)
          If intRet Then
              MsgBox "DSN Created"
          Else
              MsgBox "Create Failed"
          End If
     
    End Sub
    Comment specifier le USER ? Ca n'a pas l'air de fonctionner de cette maniere.
    Est il possible de specifier le PASSWORD ?

    MERCI D'AVANCE POUR VOS PRECISIONS

    Mario

  2. #2
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    307
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Août 2006
    Messages : 307
    Par défaut
    Salut a tous,

    je reviens un peu sur cette erreur que je n'arrive toujours pas à résoudre...

    J'ai essayé plusieurs manieres de creer ce lien ODBC sans succes...
    En fait, ce que je fais est que je teste a l'ouverture de Excel :
    * si l'utilisateur est sur le réseau
    * s'il a ce lien ODBC nécessaire au bon fonctionnement de l'application Excel...

    Si ce lien n'existe pas, je souhaite le creer par mon code avec le user "crmtst"

    il y un souci au niveau de cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strAttributes = strAttributes & "USER=crmtst" & Chr$(0)
    Si je n'indique aucun user, il prend le Login Windows pas défaut...

    J'obtiens le message ""Create Failed" lorsque je specifie le user (idem pour "UID=crmtst").

    N'est il pas possible de specifier le user lors de la creation de ce lien ?

Discussions similaires

  1. [AC-2000] Modification des liens odbc dans les tables
    Par SDIS49 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 25/02/2011, 16h53
  2. Modification des liens odbc dans les tables
    Par SDIS49 dans le forum Connexions aux bases de données
    Réponses: 0
    Dernier message: 25/02/2011, 08h26
  3. Problème avec lien ODBC dans Access
    Par Claude Poulin dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 02/03/2009, 19h40
  4. [vba ODBC] Comment "hardcodé" un lien ODBC dans MS
    Par FredLessire dans le forum Access
    Réponses: 3
    Dernier message: 24/04/2006, 16h50
  5. C++: coder la creation d'un lien odbc
    Par Luther13 dans le forum Windows
    Réponses: 2
    Dernier message: 01/12/2005, 10h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo