OVH Cloud OVH Cloud

Nom de fichier en tant que variable

1 réponse
Avatar
Philippe
Bonsoir .
Je vais essayer d'être le + clair possible sur le problème qui me bloque ce
soir.
Dans un fichier (1) une cellule A1 avec pour valeur le nom d'un autre
fichier (2).
Dans la cellule A2 du premier fichier je souhaite faire apparaître la valeur
de la cellule A2 du deuxième fichier du style:
C:\Documents and Settings\Philippe\Mes documents\(valeur de la cellule
A1).xls\Feuil1!A2
Avez-vous la solution ou un conseil sur un site qui puisse m'éclairer ?

Merci à tous

Philippe

1 réponse

Avatar
Hervé
Bonsoir Philippe,
A mettre dans le module de ta feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Chemin As String
If Not Intersect(Target, [A1]) Is Nothing Then
'adapter le chemin
Chemin = "D:"
If Dir(Chemin & [A1]) <> "" Then
Lire Chemin & [A1], "Feuil1", "A2:A2"
End If
End If
End Sub

Sub ConnectCLasseur(ConnectCL As Object, _
Fichier As String, _
Optional Rs)

Set ConnectCL = CreateObject("ADODB.Connection")
If Not IsMissing(Rs) Then
Set Rs = CreateObject("ADODB.Recordset")
End If

ConnectCL.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Fichier & ";" & _
"Extended Properties=""Excel 8.0;HDR=NO;IMEX= 2;"""
End Sub

Sub Lire(Classeur As String, _
NomFeuille As String, _
Cellule As String)

Dim ConnectCL As Object
Dim Rs As Object

ConnectCLasseur ConnectCL, Classeur, Rs

With Rs
.CursorType = 1
.LockType = 3
.Open "SELECT * FROM `" & NomFeuille & "$" & _
Cellule & "` ", ConnectCL
[A2] = .Fields(0).Value
End With

ConnectCL.Close

Set Rs = Nothing
Set ConnectCL = Nothing
End Sub

Hervé.

"Philippe" a écrit dans le message news:
uGRp#
Bonsoir .
Je vais essayer d'être le + clair possible sur le problème qui me bloque
ce

soir.
Dans un fichier (1) une cellule A1 avec pour valeur le nom d'un autre
fichier (2).
Dans la cellule A2 du premier fichier je souhaite faire apparaître la
valeur

de la cellule A2 du deuxième fichier du style:
C:Documents and SettingsPhilippeMes documents(valeur de la cellule
A1).xlsFeuil1!A2
Avez-vous la solution ou un conseil sur un site qui puisse m'éclairer ?

Merci à tous

Philippe