Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille
re,
hmm j'ai oublier quelque chose d'assez important (ma faute...):
pour mémoire, la macro:
----------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" And Target.Value <> "" Then
Sheets(Target.Value).Range("B4").Copy Destination:=ActiveSheet.Range("A2")
End If
End Sub
----------------------------------------------------------
et enfin la macro tel que je l'ai implémentée dans mon fichier excel:
----------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" And Target.Value <> "" Then
Sheets(Target.Value).Range("B4").Copy Destination:=ActiveSheet.Range("B1")
End If
End Sub
----------------------------------------------------------
(seul la cellule d'où on récupère le nom de la feuille, et la cellule de destination des infos à récupérée ont changées...)
hors dans mon cas, à chaques lignes correspondra une nouvelle feuille:
ex mon fichier excel:
A B C D E F G H I J K L M
1 Feuil1 xxx yyy zzz etc
2 Feuil2 aaa bbb ccc etc
3 etc
4
5
6
7
ça veut donc dire que plutot que de faire:
----------------------------------------------------------
If Target.Address = "$A$1" And Target.Value <> "" Then
dans la macro, il va me falloir faire un truc du genre:
----------------------------------------------------------
for Target.Address = "$A$1" to "end" And Target.Value <> "" Then
autre chose encore, si je suis sur la 2ème ligne, correspondant à la feuille2, alors il faut stocker le numéro de la ligne dans une variable pour que plus bas dans le code de cette macro:
...Copy Destination:=ActiveSheet.Range("A2")
ressemble plutot à ça:
...Copy Destination:=ActiveSheet.Range("A","VarLigneEnCours")
le 2 de A2 soit en fait la valeur de la ligne en cours (celle où on à entré Feuil2 par exemple...)
(je ne connais pas le visual basic, et donc sa syntaxe, donc ce que j'ai mis sous form de code ne sert qu'a comprendre ce que je cherche à faire...
voilà donc, si vous avez une idée.... 🙂
et encore merci pour la macro précédente! 🙂