Debut & fin de plage pour une colonne
Fermé
Noha-Diak
Messages postés
20
Date d'inscription
samedi 8 septembre 2018
Statut
Membre
Dernière intervention
26 février 2019
-
18 oct. 2018 à 06:59
ccm81 Messages postés 10856 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 10 mai 2024 - 18 oct. 2018 à 18:51
ccm81 Messages postés 10856 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 10 mai 2024 - 18 oct. 2018 à 18:51
A voir également:
- Debut & fin de plage pour une colonne
- Déplacer une colonne excel - Guide
- Colonne word - Guide
- Word attend la fin d'une action ole ✓ - Forum Word
- Frédéric cherche à faire le buzz sur les réseaux sociaux. il a ajouté une image de manchots sur une image de plage. retrouvez l'image originale de la plage. que cachent les manchots ? - Forum Graphisme
- Additionner colonne excel - Guide
4 réponses
ThauTheme
Messages postés
1442
Date d'inscription
mardi 21 octobre 2014
Statut
Membre
Dernière intervention
29 juillet 2022
160
18 oct. 2018 à 09:18
18 oct. 2018 à 09:18
Bonjour Noha, bonjour le forum,
Double-clique sur n'importe quelle cellule de la colonne A, une message indique la première et la dernière ligne contenant la valeur double-cliquée. Code à placer dans le composant de l'onglet concerné :
Double-clique sur n'importe quelle cellule de la colonne A, une message indique la première et la dernière ligne contenant la valeur double-cliquée. Code à placer dans le composant de l'onglet concerné :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim TV As Variant 'déclare la variable TV (Tableau des Valeurs) Dim LD As Long 'déclare la variable LD (Ligne du Début) Dim LF As Long 'déclare la variable LF (Ligne de Fin) If Target.Column <> 1 Then Exit Sub 'si le boucle-clic a lieu ailleurs qu'en colonne A, sort de la procédure If Target.Value = "" Then Exit Sub 'si le double-clic a lieur dans une celluel vide, sort de la procédure Cancel = True 'annule le mode [édition] lié au double-clic TV = Range("A1").CurrentRegion 'définit le tableau des valeurs TV For I = 1 To UBound(TV, 1) 'boucle sur toutes les lignes I du tableau des valeurs 'si la donnée ligne I colonne 1 de TV est égale à la valeur de la cellule double-cliquée, définit la ligne de debut LD et sort de la boucle If TV(I, 1) = Target.Value Then LD = I: Exit For Next I 'prochaine ligne de la boucle For I = LD To UBound(TV, 1) 'boucle sur toutes les lignes I du tableau des valeurs (en partant de la ligne LD) If I = UBound(TV, 1) Then LF = I 'si I est la derniere ligne du tableau des valeur, définit la ligne de fin LF 'si la donnée ligne I colonne 1 de TV est différente de la valeur de la cellule double-cliquée, définit la ligne de fin LF (I-1) et sort de la boucle If TV(I, 1) <> Target.Value Then LF = I - 1: Exit For Next I 'prochaine ligne de la boucle MsgBox LD & " / " & LF 'message qui affiche la lgne de début et la ligne de fin End Sub
ccm81
Messages postés
10856
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
10 mai 2024
2 404
18 oct. 2018 à 14:58
18 oct. 2018 à 14:58
Bonjour à tous les deux
Avec deux fonctions
Cdlmnt
Avec deux fonctions
Public Function premli(plage As Range, s As String) As Long Dim obj As Object premli = 0 Set obj = plage.Find(s, , , xlWhole, , xlNext) If Not obj Is Nothing Then premli = obj.Row End Function Public Function dernli(plage As Range, s As String) As Long Dim obj As Object dernli = 0 Set obj = plage.Find(s, , , xlWhole, , xlPrevious) If Not obj Is Nothing Then dernli = obj.Row End Function
Cdlmnt
ccm81
Messages postés
10856
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
10 mai 2024
2 404
18 oct. 2018 à 16:31
18 oct. 2018 à 16:31
Et si tu veux la liste des couples (première ligne, dernière ligne) pou un texte donné
https://www.cjoint.com/c/HJsoEe6jyfB
Cdlmnt
https://www.cjoint.com/c/HJsoEe6jyfB
Cdlmnt
jordane45
Messages postés
38173
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
10 mai 2024
4 665
18 oct. 2018 à 17:07
18 oct. 2018 à 17:07
Hello,
J'ai l'impression que ta fonction lpd ne marche pas correctement lorsque les données sont triées par ordre A->Z (comme indiqué dans la demande de l'utilisateur).
Il m'ajoute systématiquement une plage supplémentaire (la première ligne vide du tableau) pour les aaa et les bbb
et pour les ccc il retire 1 à la dernière ligne
J'ai l'impression que ta fonction lpd ne marche pas correctement lorsque les données sont triées par ordre A->Z (comme indiqué dans la demande de l'utilisateur).
Il m'ajoute systématiquement une plage supplémentaire (la première ligne vide du tableau) pour les aaa et les bbb
et pour les ccc il retire 1 à la dernière ligne
ccm81
Messages postés
10856
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
10 mai 2024
2 404
18 oct. 2018 à 18:51
18 oct. 2018 à 18:51
Salut jordane45
C'était plus qu'une impression ;-)
https://www.cjoint.com/c/HJsqX6smyiB
Cdlmnt
C'était plus qu'une impression ;-)
https://www.cjoint.com/c/HJsqX6smyiB
Cdlmnt