cree une macro

A

alain

Guest
Bonjour, voilà mon problème :

Je voudrais pouvoir reprendre dans un classeur (A), une donnée d’un autre classeur (B) fermé en choisissant le nom du dossier ou est enregistrer le classeur (B) ferme via une cellule du classeur (A) ouvert.

Est ce réalisable et pouvez vous me donner la marche à suivre



Merci
 
R

Roland

Guest
Bonsoir Alain

Tu idiques dans ta cellule l'adresse du classeur à lire
'c:\VBA\Data\[Classeur1.xls]Feuil1'!R2C2

et tu fait une macro

Sub lecture()
Range("A2") = ExecuteExcel4Macro(Range("A1"))
End Sub

A1 contient l'adresse A2 le résultat


A+ Roland
 
R

Roland

Guest
Bonsoir Alain

Voici un exemple qui lit la cellule B2 de trois classeurs rangés sous c:\VBA\Data et restitue la somme dans A2 du classeur ouvert

Sub somme_cla()

Dim MyFile, MyPath, MyName
Application.ScreenUpdating = False
MyPath = "c:\VBA\Data\" ' Définit le chemin d'accès e.
MyName = Dir(MyPath, vbDirectory) 'Extrait la première entré
Do While MyName <> "" ' Commence la boucle.
If MyName <> "." And MyName <> ".." Then
If (GetAttr(MyPath & MyName) And vbDirectory) = vbNormal And Left(MyName, 8) = "Classeur" Then
MyFile = "'" & MyPath & "[" & MyName & "]" & "Feuil1'!R2C2"
somme = somme + ExecuteExcel4Macro(MyFile)
End If
End If
MyName = Dir ' Extrait l'entrée suivante.
Loop
Range("A2") = somme
End Sub

CopyRight Juliette pour l'instruction ExecuteExcel4Macro(MyFile)

A+ Roland
 

Discussions similaires

Réponses
8
Affichages
279

Statistiques des forums

Discussions
313 102
Messages
2 095 289
Membres
106 244
dernier inscrit
Zamot