Comment écrire dans une base de données ODBC via Excel (VBA)

Shark777

Nouveau membre
Bonjour à tous,

Je travail avec une base de données ODBC du nom de CACHÉ (de la compagnie Intersystems). Jusqu'à maintenant j'avais seulement à faire des requêtes via Excel (menu DATA ... ) pour extraire des data de la BDD. Cependant, pour un nouveau projet, j'aurais besoin de pouvoir écrire de nouvelles informations dans la base de données en utilisants EXCEL / VBA.

En résumé,
Requête initiale ... modifications et /ou ajout de données ... upload des infos à partir EXCEL vers la BDD

Y'a-t-il des fonctions d'EXCEL / VBA qui me permettraient d'écrire dans la BDD directement ?
Dois-je intégrer du SQL dans des macros VBA ???

Par ou dois-je commencer pour apprendre à écrire dans ma base de données ???

Merci de votre aide

Shark
 

Freeman23

Expert
Pour attaquer une base de données via Excel :

Code:
Private wrk         As workspace
Private connect     As Connection

Public Function Connection() As Boolean
    On Error GoTo sortie_erreur
    
    Connection = False
    ' Create ODBCDirect Workspace object.
    Set wrk = CreateWorkspace("NewODBCWorkspace", "admin", "", dbUseODBC)
    Set connect = wrk.OpenConnection("BASE", dbDriverComplete, , "ODBC;DSN=BASE;UID=toto;PWD=toto;DBQ=BASE")
    If Not connect Is Nothing Then Connection = True
    
sortie:
    Exit Function
sortie_erreur:
    MsgBox "Connection : " & Err.Description
    Resume sortie
End Function

Private Sub FinConnection()
    On Error GoTo sortie_erreur

    connect.Close
    Set connect = Nothing

sortie:
    Exit Sub
sortie_erreur:
    MsgBox "FinConnection: " & Err.Description
    Resume sortie
End Sub

Il suffit de changer BASE et par la base de données et les toto par les infos de connection ODBC.

Ensuite à partir de connect tu peux utiliser toutes les fonctions qui permettre de travailler avec la base de données, voir dans currentdb.CreateQueryDef, OpenRecordset, currentdb.Exceute.
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 128
Messages
6 717 845
Membres
1 586 373
Dernier membre
https://forum.tomshardwar
Partager cette page
Haut