XL 2010 [Resolu] Erreur nombre de valeurs ADODB

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Lone-wolf

XLDnaute Barbatruc
Bonsoir Le Forum

J'ai adapté ce code de Silkyroads

VB:
Option Explicit
    Public Client As String, Activite As String, Com As String
    Public lig As Long, Tot, Dt, Debut, Fin

Sub Enregistrer()
    Dim Cn As ADODB.Connection
    Dim Fichier As String, Feuille As String, strSQL As String

    Fichier = "C:\Users\" & Environ("Username") & "\Desktop\Dossiers clients\Feuille de temps.xls"
    lig = Sheets("Data").Cells(Rows.Count, 1).End(xlUp).Row
    Feuille = "Feuilles d'activité"

   
    'Les données à insérer:
    Call Init_Champ
   
    Set Cn = New ADODB.Connection
   
    With Cn
        .Provider = "MSDASQL"
        .ConnectionString = "Driver={Microsoft Excel Driver (*.xls)};" & _
            "DBQ=" & Fichier & ";ReadOnly=False;HDR=Yes"
        .Open
    End With
    
    'Les données doivent être indiquées dans le même ordre que les champs dans la base de données.
    strSQL = "INSERT INTO [" & Feuille & "$] " _
    & "VALUES ('" & Client & "'," & _
     "'" & Dt & "'," & "'" & Activite & "'," & _
     "'" & Debut & "'," & "'" & Fin & "'," & _
     "'" & Tot & "'," & "'" & Com & "'," & _
     Fin & ")"
   
    Cn.Execute strSQL
   
    Cn.Close
    Set Cn = Nothing
End Sub

Sub Init_Champs()
With Sheets("Data")
    Client = .Cells(lig, 1).Value
    Dt = .Cells(lig, 2).Value
    Activite = .Cells(lig, 3).Value
    Debut = .Cells(lig, 4).Value
    Fin = .Cells(lig, 5).Value
    Tot = .Cells(lig, 6).Value
    Com = .Cells(lig, 7).Value
End With
End Sub

Comme vous le voyez, il y a 7 colonnes et les champs sont les même dans le classeur de destination; pourtant j'ai ce code erreur. Si quelqu'un pourrait m'éclairer.

erreur.gif
 
Re tatiak

J'ai maintenant une erreur de syntaxe su Cmt

strSQL = "INSERT INTO [" & Feuille & "$] " _
& "VALUES ('" & Client & "'," & _
"'" & Dt & "'," & _
"'" & Activite & "'," & _
"'" & Debut & "'," & _
"'" & Fin & "'," & _
"'" & Tot & "'," & _
Cmt & ")"

J'ai essaié en aujoutant " ' " avant la variable , puis & " ' , " après envin.
 
Bonjour Pierre, le Forum

Tu parle de Data, est-ce que cela concerne aussi les titres? Car justement Activite est la colonne Activité comme titre.
Maintenant, j'ai cette erreur

erreur.gif


Code:
'Résultat Debug Print

'INSERT INTO [Feuilles d'activité$] VALUES ('Ali Baba','jeudi 24 novembre','Chez les _ Voleurs',
'0.354166666666667,'0.358333333333333,'
4.16666666666667E-03',Pas de tresor)
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
360
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
76
Réponses
2
Affichages
422
Réponses
2
Affichages
403
Retour