Ecrire dans table Access via bouton VBA excel

pedrofabien1986

XLDnaute Nouveau
Bonjour,

Voici ce que je doit faire :

- Faire une recherche de tout les dossiers se trouvant après le dossier racine

- Ecrire le numéro du dossier dans "Num_Affaire" de ma table

- Ecrire le nom du dossier dans "Nom_Affaire" de ma table

Pour ce qui est de faire la recherche. ça c'est bon. Par contre je n'arrive pas à me connecter à ma base de donnée afin d'y insérer mes données.

Merci d'avance de votre aide.

Voici mon code :

Code:
Sub MAJ_BD_Click()
Dim Num As String
Dim NbrCaract As String
Dim Affaire As String
Dim d As String

' Listing des Affaire en Cours

   Racine = "N:\Chantiers en cours\"                  ' Répertoire courant
   Set fs = CreateObject("Scripting.FileSystemObject")
   Set Dossier = fs.getfolder(Racine)
  
   For Each d In Dossier.SubFolders
          Num = Left(d.Name, 4)
     NbrCaract = Len(d.Name)
     Affaire = Right(d.Name, NbrCaract - 4)
    Set dbs = OpenDatabase("N:\ProgrammeBase de données.mdb")
    dbs.Execute " INSERT INTO Liste_Affaire" _
        & "(Num_Affaire, Nom_Affaire) VALUES " _
        & "('" & Num & "', '', '', '" & Affaire & "');"
    dbs.Close
   Next
End Sub
 
Dernière édition:

pedrofabien1986

XLDnaute Nouveau
Re : Ecrire dans table Access via bouton VBA excel

Alors voilà j'ai pris exemple sur le site. Mais j'ai toujours une erreur : Type défini par l'utilisateur non défini
Et cela pour les 2 méthodes. J'ai essayé en changeant les références mais rien ne va.

Code:
Sub MAJ_BD1_Click()
Dim Nom_Aff As String
Dim Num_Aff As String
Dim cnn As ADODB.Connection

Nom_Aff = "J'ai Réussi, Youpy"
Num_Aff = "15987"

  Set cnn = New ADODB.Connection
  cnn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\\projeco-s02\PROJECO REALISATIONS\Divers Projeco\Energie + détail isolation\Programme\BaseDonne.mdb"
  Sql = "INSERT INTO Liste_Affaire (Num_Affaire,Nom_Affaire) VALUES('" & Nom_Aff & "','" & Num_Aff & "')"
  cnn.Execute Sql
  cnn.Close
  Set cnn = Nothing
End Sub

Sub MAJ_BD_Click()
Dim Nom_Aff As String
Dim Num_Aff As String

Nom_Aff = "J'ai Réussi, Youpy"
Num_Aff = "15987"

  ChDir ActiveWorkbook.Path
  Dim rs As New ADODB.Recordset
  Set cnn = New ADODB.Connection
  cnn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\\projeco-s02\PROJECO REALISATIONS\Divers Projeco\Energie + détail isolation\Programme\BaseDonne.mdb"
  rs.Open "Liste_Affaire", cnn, adOpenDynamic, adLockOptimistic
  rs.AddNew
  rs!Num_Affaire = Nom_Aff
  rs!Nom_Affaire = Num_Aff
  rs.Update
  rs.Close
  cnn.Close

End Sub
 

pedrofabien1986

XLDnaute Nouveau
Re : Ecrire dans table Access via bouton VBA excel

Alors voilà j'ai réussi à me connecter à ma base de donnée mais maintenant j'ai un message d'erreur que je n'arrive pas à corrigé.

Code:
Sub MAJ_BD_02_Click()
Dim Nom_Aff As String
Dim Num_Aff As String
Dim Fichier As String
Dim donn_num As String
Dim donn_nom As String
Dim Sql As String
Dim cnn As ADODB.Connection
Dim DB As Database
Dim RS As Recordset

Dim cn As ADODB.Connection
' CONNECTION à LA BASE DE DONNEE
  Set cnn = New ADODB.Connection
  cnn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\\PROJECO-S02\Projeco_Realisations\Divers Projeco\Energie + détail isolation\Programme\BaseDonne.mdb"
         'Efface la BD
        Sql = "DELETE FROM Donne_General"
        cnn.Execute Sql
         'Remet la Numérotation Automatique à 0
        Sql = "ALTER TABLE Donne_General ALTER COLUMN Id COUNTER(1,1)"
        cnn.Execute Sql
  Set DB = OpenDatabase("\\PROJECO-S02\Projeco_Realisations\Divers Projeco\Energie + détail isolation\Programme\BaseDonne.mdb")
    
    For I = 0 To 50
' Définition de la variable donn_num
        Sql = "SELECT Num_Affaire FROM Liste_Affaire Where Id=1"
        Set RS = DB.OpenRecordset(Sql)
        donn_num = RS("Num_Affaire")

Mon erreur se trouve à :"Set RS = DB.OpenRecordset(Sql)"
et le message est : "Incompatibilité de type" c'est une erreur 13

J'ai vraiment besoin de votre aide car ça fait une journée que je suis là dessus que je ne trouve pas la solution.

Merci d'avance
 

Discussions similaires

Réponses
14
Affichages
651

Statistiques des forums

Discussions
312 206
Messages
2 086 219
Membres
103 158
dernier inscrit
laufin