Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

récupé de la valeur (texte) d'une cellule pour appel d'une feuille

  • Initiateur de la discussion Initiateur de la discussion elran
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

elran

XLDnaute Nouveau
récupérer la valeur (texte) d'une cellule pour appel d'une feuille

Bonjour,

voilà d'un coté j'ai un fichier excel avec deux feuilles...

je voudrais que si dans une cellule d'une des colonne de ma première feuille, un utilisateur entre, par ex: Feuille2 et que Feuille2 soit = à un nom de feuille dans mon fichier excel, alors que ça puisse récupérer des données de cette feuille sur un cellule de mon choix.

en gros si l'utilisateur tape fiche2 et que fiche2 existe (et est une feuille excel) alors que ça me récupère les valeurs de fiche2...

si vous avez compris, n'hésitez pas, sinon j'essayerais d'être plus clair 🙂

d'avance merci
 
Dernière édition:
Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille

bonjour elran

je crois avoir compris mais....

quand tu as récuperé les valeurs de fiche 2 tu en fais quoi ?

et d'abord ces valeurs on sait ou elles sont en fiche 2 ?
 
Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille

oui, on sait où se trouve les valeurs à récupérer de la fiche 2...
ça c'est pas un souci...

le truc, c'est que le text de la cellule qui doit pointer sur la ficheX ait le même nom que le nom de la ficheX, en fait il faut le voir un peu comme une variable qui contiendrait le nom de la feuille à appeler...

cette partie là est à remplir manuellement par l'utilisateur, mais ça lui simplipierais la vie que d'avoir, juste en entrant "le nom de la fiche" dans une cellule, le contenu de la fiche qui s'affiche là où il le faut...
 
Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille

PierreJean Bonjour,
c'est exactement ce qu'il me fallait... MERCI! 🙂

seul petit souci, je n'arrive pas à trouver la macro, car au final c'est elle qui me dira comment tu as procédé pour récupérer la valeur de la cellule d'une ficheX...
 
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! 🙂
 
Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille

Bonjour Elran, Pierrejean

Pour ta 1ère question, peut être utilisé le code ci dessous pour cibler toutes modifications dans colonne "A"

Code:
If Target.Column = 1 And Target.Value <> "" Then

Pour ta 2ème question, si tu recherches la ligne de la cellule modifié peut être identifier ta variable comme ci dessous :

Code:
dim x as Integer
x =Target.row

Enfin si j'ai tout compris, a tester tout de même
bonaprès midi
@+
 
Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille

re

elran

depuis le debut je tente de t'orienter vers le bon processus pour la resolution de ton probleme !!!

c'est le suivant:

tu recopies ton fichier

tu l'elagues des données confidentielles que tu remplaces par des valeurs "bidon" en conservant les types de données ainsi que les mises en forme

tu expliques d'ou tu pars et ou tu veux arriver

et enfin tu postes ledit fichier

sans cela on va passer (et toi et nous) un temps fou a tenter de se comprendre
 
Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille

Pierrot93: merci pour cette réponse, je vais la testé dès que je le peut.
PierreJean: c'est vrai... ma faute, m'enfin là je n'ai rien à ajouté, je pense avoir fait le tour... 🙂
je n'avais pas une vision global de la chose, du coup, dur de faire un post complet sur mon pb... 🙂
 
Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille

bonjour,
je ne sais pas comment affecter la variable x, qui correspond à ceci:
----------------
dim x as Integer
x =Target.row
----------------

à cette ligne:
------------------------------------------------------------------
Sheets(Target.Value).Range("B4").Copy Destination:=ActiveSheet.Range("A2")
------------------------------------------------------------------

sachant que c'est à l'endroit en Gras, dans le code, qu'il me faut insérer cette variable, et sachant aussi que la colonne (A), elle, ne change pas.

pour rappel le but du jeu et qu'en fonction de la cellule modifiée, je récupère le numéro de ligne sur laquelle je me trouve pour par la suite affiché un résultat sur la même ligne, mais dans une autre colonne, qui elle sera déterminée à l'avance....

pour info voici ma macro tel quel au jour d'aujourd'hui:
------------------------------------------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x As Integer
If Target.Column = 2 And Target.Value <> "" Then
x = Target.Row
Sheets(Target.Value).Range("B4").Copy Destination:=ActiveSheet.Range("A2")
End If
End Sub
------------------------------------------------------------------------------------------

des idées???
 
Dernière édition:
Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille

re,
bon j'ai trouvé en faisant comme ceci:
---------------------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x As Integer
If Target.Column = 2 And Target.Value <> "" Then
x = Target.Row
Sheets(Target.Value).Range("B4").Copy Destination:=ActiveSheet.Cells(x, 1)
End If
End Sub
---------------------------------------------------------------------
 
Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille

Bonjour Elran

si j'ai bien compris le code à utilisé serait plutôt celui ci dessous :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x As Integer
If Target.Column = 2 And Target.Value <> "" Then
    x = Target.Row
    Target.Copy Range("A" & x)
End If
End Sub

je ne comprends pas trop ton code :

Code:
Sheets(Target.Value).Range("B4").Copy

J'ai pas testé mais il y a des chances pour que cela coince.

Bon après midi
@+
 
Dernière édition:
Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille

bonjour,
ben pourtant ça fonctionne...
c'est le code que m'avait refilé PierreJean...
c'est comme ça qu'il faisait la chose...

tu me proposes de passé par un target.range plutot que activesheet.cells

j'avoue ne pas connaitre la différence entre ses deux façon de faire...
mais à priorri, une "range" pouvant être plusieurs ligne pour une colonne ou plusieurs colonne pour une ligne (à priorri hein...) il me semble préférable d'utilisé cells non?
bon ceci dit, ce que tu me proposes colle plus avec le problème que j'énnoncais juste avant...

c'est juste que sur le forum j'ai vu un poste d'un type qui cherchait à faire à peut prêt la même chose, et qui lui passé par activesheet.cells plutot que
target.range

mais peut être qu'avec la commande target.range il y à moyen de passé plusieurs données en même temps?
 
Re : récupé de la valeur (texte) d'une cellule pour appel d'une feuille

bonjour elran

si le but du heu est de recopier sur la même ligne
x=target.row
definit le numero de ligne ou tu te trouves au declenchement de la macro
il est ensuite utilisé dans cells(x,1) pour coller dans la même ligne (x) et en colonne 1 soit A
si tu souhaites coller en A2 le x=target.row devient inutile
est-ce clair ???
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…