Bonjour le forum, et avant tout, meilleurs voeux à toutes et tous pour cette année 2006 ; longue vie à Excel Downloads...
Je fais suite à ce fil :
Lien supprimé
... dans lequel MichelXLD fournit un fichier zip avec un code permettant d'aller écrire des données du classeur actif dans un classeur fermé.
Voilà le code, à peine retouché pour coller à mon projet :
Option Explicit
Sub Envoi()
Dim Cn As ADODB.Connection
Dim Rs As ADODB.Recordset
Dim Fichier As String, Cible As String, Feuille As String
Dim i As Byte
Dim c As Range
Fichier = ThisWorkbook.Path & '\\Recapitulatif SG 2005.xls'
Feuille = 'BD$'
Set Cn = New ADODB.Connection
Cn.Open 'Provider = Microsoft.Jet.OLEDB.4.0;' & _
'data source=' & Fichier & ';' & _
'extended properties=''Excel 8.0;'''
Cible = 'SELECT * FROM [' & Feuille & '];'
Set Rs = New Recordset
Rs.Open Cible, Cn, adOpenKeyset, adLockOptimistic
Rs.AddNew
For j = 0 To 19
Rs.Fields(j) = Cells(1, j + 1)
Next j
Rs.Update
Rs.Close
Cn.Close
MsgBox 'Exportation effectuée.'
End Sub
Le problème, c'est qu'au tout début de l'exécution de la macro, celle-ci plante et m'affiche le message suivant : 'Erreur de compilation - Utilisation incorrecte du mot-clé New' (là où c'est souligné dans mon code ci-dessous).
Petite précision : le fichier de saisie ainsi que le fichier fermé ne sont pas sur mon DD mais sur un réseau... Mais je ne pense pas qu'il y ait une incidence car ils sont tous les 2 au même endroit, dans un même répertoire.
Et j'ai bel et bien, pour les 2 fichiers, été dans les références de VBAProject afin de cocher le 'Microsoft ActiveX Data Objects 2.8 Library'.
Si quelqu'un pouvait m'aider, je vous remercie par avance.
Ciao ciao
Je fais suite à ce fil :
Lien supprimé
... dans lequel MichelXLD fournit un fichier zip avec un code permettant d'aller écrire des données du classeur actif dans un classeur fermé.
Voilà le code, à peine retouché pour coller à mon projet :
Option Explicit
Sub Envoi()
Dim Cn As ADODB.Connection
Dim Rs As ADODB.Recordset
Dim Fichier As String, Cible As String, Feuille As String
Dim i As Byte
Dim c As Range
Fichier = ThisWorkbook.Path & '\\Recapitulatif SG 2005.xls'
Feuille = 'BD$'
Set Cn = New ADODB.Connection
Cn.Open 'Provider = Microsoft.Jet.OLEDB.4.0;' & _
'data source=' & Fichier & ';' & _
'extended properties=''Excel 8.0;'''
Cible = 'SELECT * FROM [' & Feuille & '];'
Set Rs = New Recordset
Rs.Open Cible, Cn, adOpenKeyset, adLockOptimistic
Rs.AddNew
For j = 0 To 19
Rs.Fields(j) = Cells(1, j + 1)
Next j
Rs.Update
Rs.Close
Cn.Close
MsgBox 'Exportation effectuée.'
End Sub
Le problème, c'est qu'au tout début de l'exécution de la macro, celle-ci plante et m'affiche le message suivant : 'Erreur de compilation - Utilisation incorrecte du mot-clé New' (là où c'est souligné dans mon code ci-dessous).
Petite précision : le fichier de saisie ainsi que le fichier fermé ne sont pas sur mon DD mais sur un réseau... Mais je ne pense pas qu'il y ait une incidence car ils sont tous les 2 au même endroit, dans un même répertoire.
Et j'ai bel et bien, pour les 2 fichiers, été dans les références de VBAProject afin de cocher le 'Microsoft ActiveX Data Objects 2.8 Library'.
Si quelqu'un pouvait m'aider, je vous remercie par avance.
Ciao ciao