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

Macro renvoyant un numéro de ligne

  • Initiateur de la discussion Initiateur de la discussion max_31
  • 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 !

M

max_31

Guest
Bonjour,

Je souhaiterais créer une macro permettant à une variable de prendre la valeur du numéro de ligne où se trouve, par exemple, le mot "FIN". Le mot "Fin" étant nécessairement dans la colonne A.

Ex :
en colonne A (colonne invariable), à la ligne 233, il y a le mot "FIN".
Je souhaite donc qu'une varialbe (par exemple la variable "A"), prenne la valeur 233.
Si le mot "Fin" est en ligne 50, alors A devra prendre la valeur 50.

Cela doit être simple, mais je ne sais pas faire.

Merci d'avance.
 
Re : Macro renvoyant un numéro de ligne

Salut le Forum

Code:
Sub Trouve()
 
Dim TaLigne As Long
 
With Range("A1:A" & [A65536].End(3).Row)
    Set C = .Find("FIN", LookIn:=xlValues)
        If Not C Is Nothing Then
            TaLigne = C.Row
        Else
            MsgBox ("Rien trouvé !")
        End If
 
End With
    
End Sub

Mytå
 
Macros renvoyant un numéro de ligne et surlingnant la ligne sélectionnée

Bonjour tout le monde,

La macro utilisée fonctionne très bien.
J'ai essayé de la mettre avec une autre, qui a pour objectif de mettre certaines cases avec une couleur définie en fonction de la cellule où l'on a cliqué.

Comme je dois mettre à jour mon tableau régulièrement, à l'aide de Copier/coller, quand la macro tourne, il n'est plus possible de faire du Ctrl+C/Ctrl+V.
Je souhaite donc pouvoir désactiver la macro quand je suis en mode saisie, et l'activer quand je suis en mode consultation.
Pour cela, j'ai créé un bouton bascule dans le lequel j'ai copié le code.
Et la ca bugg...

Quelqu'un aurait il une idee d'une part pour résoudre, et d'autre part, pour peut etre simplifier le code ?

Voila le code :

Private Sub ToggleButton1_Click()

Dim TaLigne As Long

With Range("A1:A" & [A65536].End(3).Row)
Set C = .Find("FIN", LookIn:=xlValues)
If Not C Is Nothing Then
TaLigne = C.Row
Else
MsgBox ("Rien trouvé !")
End If

End With

If Target.Row < TaLigne Then

If Target.Row > 5 Then

Range(Cells(6, 1), Cells(TaLigne, 1)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 8), Cells(Target.Row, 1)).Interior.ColorIndex = 40

Range(Cells(6, 8), Cells(TaLigne, 8)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 8), Cells(Target.Row, 8)).Interior.ColorIndex = 40

Range(Cells(6, 12), Cells(TaLigne, 12)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 12), Cells(Target.Row, 12)).Interior.ColorIndex = 40

Range(Cells(6, 17), Cells(TaLigne, 17)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 17), Cells(Target.Row, 17)).Interior.ColorIndex = 40

Range(Cells(6, 21), Cells(TaLigne, 21)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 21), Cells(Target.Row, 21)).Interior.ColorIndex = 40

Range(Cells(6, 34), Cells(TaLigne, 34)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 34), Cells(Target.Row, 34)).Interior.ColorIndex = 40

Range(Cells(6, 50), Cells(TaLigne, 50)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 50), Cells(Target.Row, 50)).Interior.ColorIndex = 40

Range(Cells(6, 60), Cells(TaLigne, 60)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 60), Cells(Target.Row, 60)).Interior.ColorIndex = 40

Range(Cells(6, 91), Cells(TaLigne, 91)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 91), Cells(Target.Row, 91)).Interior.ColorIndex = 40

Range(Cells(6, 113), Cells(TaLigne, 113)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 113), Cells(Target.Row, 113)).Interior.ColorIndex = 40

Range(Cells(6, 132), Cells(TaLigne, 132)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 132), Cells(Target.Row, 132)).Interior.ColorIndex = 40

Range(Cells(6, 147), Cells(TaLigne, 147)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 147), Cells(Target.Row, 147)).Interior.ColorIndex = 40

Range(Cells(6, 153), Cells(TaLigne, 153)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 153), Cells(Target.Row, 153)).Interior.ColorIndex = 40

Range(Cells(6, 183), Cells(TaLigne, 183)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 183), Cells(Target.Row, 183)).Interior.ColorIndex = 40

Range(Cells(6, 192), Cells(TaLigne, 192)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 192), Cells(Target.Row, 192)).Interior.ColorIndex = 40

End If

End If

End Sub
 
Re : Macros renvoyant un numéro de ligne et surlingnant la ligne sélectionnée

salut
Je pas comprendre quoi toi dire ???
Tu peux expliciter ta demande ?
Ta macro tourne quand tu cliques sur le bouton. ça c'est ok, mais ça dure pas des heures non ?
A+
 
Re : Macro renvoyant un numéro de ligne

Bonjour,

Je te remercie d'avoir essaye de me comprendre. C'était pas tres clair je te l'accorde.

Je te joins un fichier exemple, dans lequel expure un grand nombres de colonnes et un grand nombres de lignes.

J'ai essayé d'expliquer ma demande dans le fichier joint...

Merci.
 

Pièces jointes

Re : Macro renvoyant un numéro de ligne

Salut
P'vez répéter la question ???

Ce que je comprends :
- Quand tu es en mode saisie, il ne se passe rien
- Quand tu passes en mode consultation (mode par défaut)
dans le carré limité Par
Gauche : Colonne A
Droite : colonne-1 où le mot "Fin" se trouve en ligne 4
Haut : Ligne 4
Bas : ligne-1 où le mot "Fin" se trouve en colonne A
si la cellule active se trouve sur une ligne à l'intérieur de ce carré, les intersections avec des colonnes prévues se colorent en Index 40
ces colonnes sont :
A(1)-L(12)-Q(17)-U(21)
AH(34)-AX(50)
BH(60)
CM(91)
DI(113)
EB(132)-EC(133)-EQ(147)-EW(153)
GA(183)-GJ(192)
Si la cellule active est en dehors du carré, même sur une ligne ou une colonne
commençant dans le carré, il ne se passe rien

J'ai tout juste ? J'aurais un bon point ??? 😉

Refaits pas mon post, je l'édites
A+
 

Pièces jointes

Dernière édition:
Re : Macro renvoyant un numéro de ligne

Bonjour le Forum, Max,

Max, merci de ne pas doubler les posts pour une même question !!!

Je t'ai déjà répondu ici : http://www.excel-downloads.com/forum/65105-macro-surlingnant-des-cellules-de-la-ligne-selectionnee.html

La macro fonctionne très bien. La seule différence est que je determinais la fin de ton tableau dynamiquement.

Je ne cherchais pas à trouver le mot "fin". Je trouvais cela plus "propre" de faire une recherche dynamique de fin de tableau.

Néanmoins, si tu voulais absolument terminer ta plage par les mots fin, il fallait poster dans le même message puisque c'est le même problème. Quelqu'un aurait modifié ma macro

A+

Creepy(Qui n'est de mauvaise humeur aujourd'hui !!) 🙁
 
Re : Macro renvoyant un numéro de ligne

Creepy,
Je m'excuse pour ce doublon.
J'ai voulu changer le titre du topic, mais j'ai du faire une faussse manip', et du coup, un autre topic a été créé.
Je te remercie pour le temps que tu as passe sur mon sujet. Par contre je répondrai sur l'autre topic, vu qu'il est plus approprié.

Gorfael,
Je réponds a ta question ici, mais je pense qu'il faudrait poster la réponse sur l'autre sujet (cf message de Creepy).
Je pense que tu as bien compris l'objectif de la macro que je souahite créer. Petit détail supplémentaire :
les cellules a colorer sont à l'intersection de la ligne où la cellule est active avec l'ensemble des colonnes listées. Et quand on clique dans une zone en dehors du tableau, il faudrait "blanchir" les cases qui étaient colorées précédemment, sans "blanchir" l'ensemble du tableau, car j'ai des cellules colorées pour m'alerter de certains aspects... (qui n'ont rien a voir avec la présente macro).

Pour ce qui est de la recherche dynamique de Creepy, ca me va tout a fait, c nickel... Je ne savais pas que c'était possible de faire ca...

Voilou...
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
7
Affichages
692
Réponses
3
Affichages
169
  • Question Question
Microsoft 365 Suivi charge/capa
Réponses
10
Affichages
356
Réponses
16
Affichages
507
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…