Bonsoir à tous,
Je sais que c'est le week-end, que certains d'entre vous aimeraient reposer leurs neurones, mais je suis frappé d'un certain goût du sadisme et ait décidé de poster tout de même mon problème.
A chaque moment de la journée, j'aimerais pouvoir enregistrer plusieurs cellules d'une même ligne de mon classeur actif (disons la plage A1:A7) sur un classeur fermé qui servirait de base de données, d'où l'utilité de ADO ici.
Malgré plusieurs tentatives, impossible de trouver le code miracle :
Je suis maintenant perdu, comme Jack. Aidez-moi, braves John Locke. Je vous remercie d'avance ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 Sub InsertRecord(ByVal nom As String, Byval prenom As String, ByVal age As Integer) Dim Cnx As ADODB.Connection Dim Fichier As String, Feuille As String, strSQL As String Fichier = "C:\archive.xls" 'chemin complet du fichier fermé Feuille = "ok" 'Onglet où les données doivent être insérées Set Cnx = New ADODB.Connection With Cnx .Provider = "MSDASQL" .ConnectionString = "Driver={Microsoft Excel Driver (*.xls)};" & _ "DBQ=" & Fichier & "; ReadOnly=False;" .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 ( '" & nom "', '" & prenom & "', " & age & ")" Cnx.Execute strSQL Cnx.Close Set Cnx = Nothing End Sub
Partager