Bonjour le forum
Comment ça va sous cette lourde chaleur ?
J'espère que tout roule ... Je viens vers vous en ce jour limite caniculaire pour comprendre la manière dont il faut procéder pour attribuer un nom à des cellules ...
En effet, je viens récupérer des données d'une feuille pour les envoyer dans un classeur fermé, grâce au code suivant :
Suite à cela, j'ai deux questions, peut-être stupides, mais n'empêche que je n'y trouve pas solution par moi-même ...
La première consiste à connaître la procédure pour préciser une feuille de calcul cible au sein de mon classeur défini dans le code ci-dessus ...
La seconde concerne plus particulièrement la partie suivante du code :
En effet, je n'arrive pas à faire en sorte que mon fichier "Archives_test" reçoive les données dans les diffiérents champs définis, parce que je m'y prends certainement mal pour donner un nom aux différents champs voulus dans le classeur "Archives_test"...
Quelqu'un saurait-il m'aider s'il vous plaît ?
Merci par avance à vous
Ci-joint le fameux classeur "Archives_test", tout simple ...
Comment ça va sous cette lourde chaleur ?
J'espère que tout roule ... Je viens vers vous en ce jour limite caniculaire pour comprendre la manière dont il faut procéder pour attribuer un nom à des cellules ...
En effet, je viens récupérer des données d'une feuille pour les envoyer dans un classeur fermé, grâce au code suivant :
Code:
Sub ArchiveFact()
Dim conn As Object
Dim requete As Object
Dim fact_num As Long, fact_date As Date, cmd_num As String, cmd_date As Date
Dim nom_clt As String, ech_date As Date, tot_HT As Double, texte_SQL As String
'collecte les infos de la facture
fact_num = Range("A14")
fact_date = Range("A16")
cmd_num = CStr(Range("C16"))
cmd_date = Range("D16")
nom_clt = CStr(Range("F9"))
ech_date = Range("H16")
tot_HT = Range("F43")
'connexion à la base dans fichier archives.xls
classeur = "Archives_test.xls"
fichier = ThisWorkbook.Path & "\" & classeur
Set conn = CreateObject("ADODB.Connection")
conn.Open "Provider = Microsoft.Jet.OLEDB.4.0;" & _
"data source=" & fichier & ";" & _
"extended properties=""Excel 8.0;"""
' travail demandé: insère dans les champs de "Archives_fact" les données collectées
texte_SQL = "INSERT INTO Archives_fact (num_fact,date_fact,num_cmd,date_cmd,nom_clt,tot_HT,ech_date) VALUES ('" & (fact_num) & "','" & (fact_date) & "', '" & (cmd_num) & "','" & (cmd_date) & "','" & (nom_clt) & "','" & (ech_date) & "','" & (tot_HT) & "')"
' éxécute le travail demandé
Set requete = CreateObject("ADODB.recordset")
Set requete = conn.Execute(texte_SQL)
Set requete = Nothing
Set conn = Nothing
MsgBox "archivage de la facture n° " & f_num & " effectué avec succès"
End Sub
Suite à cela, j'ai deux questions, peut-être stupides, mais n'empêche que je n'y trouve pas solution par moi-même ...
La première consiste à connaître la procédure pour préciser une feuille de calcul cible au sein de mon classeur défini dans le code ci-dessus ...
La seconde concerne plus particulièrement la partie suivante du code :
Code:
texte_SQL = "INSERT INTO Archives_fact (num_fact,date_fact,num_cmd,date_cmd,nom_clt,tot_HT,ech_date) VALUES ('" & (fact_num) & "','" & (fact_date) & "', '" & (cmd_num) & "','" & (cmd_date) & "','" & (nom_clt) & "','" & (ech_date) & "','" & (tot_HT) & "')"
En effet, je n'arrive pas à faire en sorte que mon fichier "Archives_test" reçoive les données dans les diffiérents champs définis, parce que je m'y prends certainement mal pour donner un nom aux différents champs voulus dans le classeur "Archives_test"...
Quelqu'un saurait-il m'aider s'il vous plaît ?
Merci par avance à vous
Ci-joint le fameux classeur "Archives_test", tout simple ...