Syntaxe pour connexion sql en vba sous excel

Résolu
Signaler
Messages postés
3
Date d'inscription
mardi 26 juin 2007
Statut
Membre
Dernière intervention
28 juin 2007
-
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
-
j'ai quelque problème je n'arrive pas à faire une connexion en vba sous excel pour me connecter à ma base de données

afin d'effecter mes requêtes qui supprimeront puis ajouterons les bonnes données qui sont dans certaines cellulles de mon fichier excel

est-ce possible de faire une connexion SQL ainsi que des requêtes

ou doit-je le faire en  aspx.vb ou autre

merci d'avance pour votre aide

7 réponses

Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
71
faisable en VBA
renseigne toi sur ADO


nb. gaffe au theme dans elquel tu postes...
Thèmes / VB.NET et VB 2005 /
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Salut,

Je ne sais pas si cela peut t'aider, mais regarde une de mes source(parmis tant d'autres bien sur) : Base de donnée ADO, il y a ce que tu cherches à faire, faudra sûrement retoucher un chti peu le code, mais faisable... 

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
3
Date d'inscription
mardi 26 juin 2007
Statut
Membre
Dernière intervention
28 juin 2007

j'avais un doute dans l'endroit pour poster
Messages postés
40
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
19 janvier 2009

Dim Connex As New ADODB.Connection
  
    Connex.ConnectionString = "Driver={SQL Server};" & _
           "Server=192.168.xxx.xxx;" & _
           "Address=192.168.xxx.xxx,1433;" & _
           "Network=DBMSSOCN;" & _
           "Database=Sportifs;" & _
           "Uid=sa;" & _
           "Pwd=*******"
    Connex.Open

voilà comment je me connecte à une base sql ...
Messages postés
3
Date d'inscription
mardi 26 juin 2007
Statut
Membre
Dernière intervention
28 juin 2007

c'est bon j'arrive a me connecter a ma bdd
mais il n'execute pas mes requete sql

voici le programme

dites-moi c'est il y a des erreurs

Sub netbackup(BDServer, BDName, BDUid, BDPassword)
Dim nbmot As Integer
Dim nummot As Integer
Dim i As Integer
Dim lettreprecedent As Boolean
Dim contenu As String
Dim lettre As String




 



    On Error Resume Next
    Set objCnx = CreateObject("ADODB.Connection")
            objCnx.Open "driver={SQL Server};server=" & BDServer & ";Language=Français;Regional=Yes;database=" & BDName & ";uid=" & BDUid & ";pwd=" & BDPassword
             If (Err.Number) Then
                        MsgBox ("Serveur " & BDServer & " la base  " & BDName & " n'existe pas.")
                        strVersionCnet = ""
                        Err.Clear
             Else
                        Set objCmd = CreateObject("ADODB.Command")
                       
                        If (Err.Number) Then
                                   MsgBox ("Impossible de connecter la base ADODB.Command " & Err.Description)
                       
                        End If
                       
                        Set objCmd.ActiveConnection = objCnx
                       
                        If (Err.Number) Then
                                   MsgBox ("objCmd.ActiveConnection " & Err.Description)
                        End If
                       
                        objCmd.CommandType = 1
                       
                        Set rSetLecture = CreateObject("ADODB.RecordSet")



                        strRequete = "SELECT DISTINCT NomSrv FROM NETBACKUP_SERVEUR "
                        strRequete2 = "DELETE FROM NETBACKUP_GERER WHERE NomSrv='" & Cells(i, 1) & " '"
                        strRequete3 = "DELETE FROM NETBACKUP_APPARTENIR WHERE NomSrv='" & Cells(i, 1) & " '"
                        strRequete4 = "INSERT INTO NETBACKUP_GERER(NomSrv,emailResp) VALUES ('" & Cells(i, 1) & "','" & Cells(i, 7) & "')"
                        strRequete5 = "INSERT INTO NETBACKUP_APPARTENIR(NomSrv,NomFonction) VALUES ('" & Cells(i, 1) & "','" & Cells(i, 3) & "')"
                        strRequete6 = "INSERT INTO NETBACKUP_SERVEUR(Nom,Commentaire) VALUES ('" & Cells(i, 1) & " ',NULL)"



                        objCmd.CommandText = strRequete
                        objCmd.CommandText = strRequete2
                        objCmd.CommandText = strRequete3
                        objCmd.CommandText = strRequete4
                        objCmd.CommandText = strRequete5
                        objCmd.CommandText = strRequete6



                        rSetLecture.Open objCmd, , 0, 1



                        i = 6
                        Set Db = currentdb
                        Do While Cells(i, 1) <> ""
                            If Db.Execute(strRequete) = Cells(i, 1) Then
                         
                                Db.Execute ("DELETE FROM NETBACKUP_GERER WHERE NomSrv='AIX01 '")
                               
                                MsgBox (Cells(i, 1))
                                nbmot = Len(Cells(i, 3))
                                nummot = 1
                                lettreprecedent = True
                                contenu = Range("C" & i)
                                Range("C" & i) = ""
                                Do While nummot <> (nbmot + 1)
                                    lettre = Mid(contenu, nummot, 1)
                                    If lettre <> " " Then
                                        Cells(i, 3) = Cells(i, 3) & lettre
                                        lettreprecedent = True
                                        Else
                                            If lettreprecedent Then
                                            Db.Execute "INSERT INTO NETBACKUP_APPARTENIR(NomSrv,NomFonction) VALUES ('" & Cells(i, 1) & "','" & Cells(i, 3) & "')"
                                                Cells(i, 3) = Cells(i, 3) & " "
                                                lettreprecedent = False
                                            End If
                                    End If
                                    nummot = nummot + 1
                                Loop
                             Else



                                Db.Execute "INSERT INTO NETBACKUP_SERVEUR(Nom,Commentaire) VALUES ('" & Cells(i, 1) & " ',NULL)"
                                nbmot = Len(Cells(i, 3))
                                nummot = 1
                                lettreprecedent = True
                                contenu = Range("C" & i)
                                Range("C" & i) = ""
                                Do While nummot <> (nbmot + 1)
                                    lettre = Mid(contenu, nummot, 1)
                                    If lettre <> " " Then
                                        Cells(i, 3) = Cells(i, 3) & lettre
                                        lettreprecedent = True
                                        Else
                                            If lettreprecedent Then
                                                Db.Execute "INSERT INTO NETBACKUP_APPARTENIR(NomSrv,NomFonction) VALUES ('" & Cells(i, 1) & "','" & Cells(i, 3) & "')"
                                                Cells(i, 3) = Cells(i, 3) & " "
                                                lettreprecedent = False
                                            End If
                                      End If
                                    nummot = nummot + 1
                                Loop
                            End If
                            i = i + 1
                        Loop
                     
                        MsgBox ("fin connexion bdd")
                    rSetLecture.Close
            End If
            Set objCnx = Nothing



End Sub
Messages postés
1
Date d'inscription
lundi 21 mai 2007
Statut
Membre
Dernière intervention
16 juillet 2007

Bonjour,
Mon projet est de connecter avec une base MySQL,d'abord il faut connecter MySQL dans une programme VB6 ,apres, cette base doit s'afficher dans une feuille de calcule excel. La connecton de base en VB est deja fini mais j'ai besoin d'aide pour l'affichage de la base en excel

merci d'avoir m'aidé.
à bientôt
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Salut,

Un conseil pour que le plus grand nombre de menbres di site puisse voir ta question, ouvre une nouvelle discussion sur le forum...

A+
Exploreur

 Linux a un noyau, Windows un pépin