Bonjour,

Je voudrais récupérer la valeur d'une cellulede la feuil1 d'un classeur "source.xlsm" fermé et la coller a l'ouverture d'un classeur "interface.xlsm dans une cellule de la feuil3.

J'ai réussi à faire une connexion ADODB qui à l'air de fonctionner dans un module, mais je ne sais pas du tout comment récupérer la valeur de la cellule du classeur férmé "source.xlsm".

Faut-il que je mette le code complet (connexion et requête) dans ThisWorkbook_open ?

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
27
Sub RequeteClasseurFerme_Excel2007()
Dim Cn As ADODB.Connection
Dim Fichier As String
Dim NomFeuille As String, texte_SQL As String
Dim Rst As ADODB.Recordset
Dim Workbook As Workbook
'Workbook As Workbooks
'Définit le classeur fermé servant de base de données
Fichier = "C:\Users\Philippe\SkyDrive\Documents\NC Jone\Tbx source.xlsm"
'Nom de la feuille dans le classeur fermé
NomFeuille = "tbx source"
Set Cn = New ADODB.Connection
'--- Connexion ---
With Cn
.Provider = "Microsoft.Jet.OLEDB.4.0"
.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" _
& Fichier & ";Extended Properties=""Excel 12.0;HDR=YES;"""
.Open
End With
'-----------------
'
'... la requête.... Comment dire cellule A1 classeur ouvert = valeur de cellule B2 classeur fermé ?
'
'--- Fermeture connexion ---
Cn.Close
Set Cn = Nothing
End Sub
Merci pour votre aide.