Recherches valeur dans tableau => indication position (macro) - VB/VBA/VBS - Programmation
Marsh Posté le 18-10-2007 à 08:55:51
Bonjour,
La bonne nouvelle...c'est que c'est possible.
Pour résumé :
Dans ta feuille1, tu as un tableau de 5 colonnes(A,B,C,D,E) et 5 lignes(1,2,3,4,5).
Dans ta feuille2, tu as 1 bouton qui permet de récupérer la colonne et la ligne sur lequel se trouve le X dans le tableau de la feuille1.
Adapte le code suivant : le bouton CommandButton1 ets sur la feuille2
Private Sub CommandButton1_Click()
Dim MonTableau As Range
Set MonTableau = Sheets(1).Range("B2:F6" )
For Each cel In MonTableau
If cel.Value = "X" Then msg = cel.Row & "--" & cel.Column
Next
MsgBox msg
End Sub
Un détail : au cas où il y plusieurs X positionnés ca ne marche pas forcément très bien.
Marsh Posté le 18-10-2007 à 10:45:16
Je te remercie, je vais tester ça. (c'est possible youhouu !!)
J'ai oublié de préciser qu'il y'aurait 5 ou 6 tableau sur la même fueille, mais ton code semble être prévu pour.
Je vous tiens au courant si j'ai des pbs
Marsh Posté le 17-10-2007 à 23:53:07
Bonjour,
Je vous explique ce que je souhaite faire (cela concerne un macro excel) :
J'ai un tableau composé de 5 lignes y (ex pour la fréquence de repas) et de 5 colonnes x (ex pour le contenu du repas).
Quelqu'un vient alors remplir le tableau en mettant seulement un X (ou une autre lettre) à l'endroit correspondant à sa façon de faire. Le X donne donc une position sur les lignes y et sur les colonnes x. J'aimerai qu'alors en cliquant sur un bouton, dans une zone précise d'une seconde feuille, apparaisse le N° (de 1 à 5) de la ligne, sur la cellule d'en dessous le N° (de 1 à 5) de la colonne, ainsi que l'insertion d'une phrase (ex de conseil) sur la cellule d'à coté.
Est-ce possible en macro ? Si oui comment s'appel cette "technique" , pourriez vous me mettre sur la piste où me donner un code pouvant m'aider ? N'ayant pas le bon mot pour formuler ma demande je n'arrive pas à trouver des résultats corrects dans les moteurs de recherches et les forums.
Etant débutant j'ai réussi à faire quelque chose avec "If ActiveCell.FormulaR1C1 " cependant une seconde personne est obligé d'écrire le nbr x (colonne) et le nbr y (ligne) à part, donc c'est une perte de temps. Sans compter que le code prends une place énorme ; vu qu'il me faut un "If ActiveCell.FormulaR1C1" pour chaques possibilités. Merci d'avance