XL 2010 [Resolu] Erreur nombre de valeurs ADODB

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
 

Lone-wolf

XLDnaute Barbatruc
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.
 

Lone-wolf

XLDnaute Barbatruc
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

  • Classeur1.xlsm
    22.1 KB · Affichages: 57
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 107
Membres
103 120
dernier inscrit
83400ren