Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

no de ligme d'un range

5 réponses
Avatar
Mario Limoges
Bonjour-bonsoir.

je vais tenter d'être le plus claire possible ...

Sur une feuille j'ai plusieurs plages nommées (12). "Mois_Janvier",
"Mois_Fevrier" et ainsi de suite pour les 12 mois. Chaque plage comportes 5
lignes par 7 collones. j'utilise
For Each c In Range("Mois_Janvier")
next c

pour passer une a une les divers cellules contenu dans la plage. Je veux
savoir si la cellule trouvée ce trouve sur la 1er, 2em, 3em, 4em ou 5em
ligne de ma plage ce qui me permeterais de la comparer avec le no.semaine
d'une date de janvier. la facon que j ai imaginé est d'insérer à
l'intérieur de la boucle for un select case c.row.

Auriez vous une idée plus élégante de récupérer le no de la ligne de la
plage.

Merci à l'avance

5 réponses

Avatar
Tatanka
Salut Mario,

Peut-être quelque chose du genre :

Sub Ligne_Sélection()
Set ici = Selection
PL = ici(1).Row
For Each c In ici
MsgBox c.Row - PL + 1
Next c
End Sub

Serge


"Mario Limoges" a écrit dans le message de news: 4_nkj.16490$
Bonjour-bonsoir.

je vais tenter d'être le plus claire possible ...

Sur une feuille j'ai plusieurs plages nommées (12). "Mois_Janvier", "Mois_Fevrier" et ainsi de suite pour les 12 mois. Chaque
plage comportes 5 lignes par 7 collones. j'utilise
For Each c In Range("Mois_Janvier")
next c

pour passer une a une les divers cellules contenu dans la plage. Je veux savoir si la cellule trouvée ce trouve sur la 1er, 2em,
3em, 4em ou 5em ligne de ma plage ce qui me permeterais de la comparer avec le no.semaine d'une date de janvier. la facon que j
ai imaginé est d'insérer à l'intérieur de la boucle for un select case c.row.

Auriez vous une idée plus élégante de récupérer le no de la ligne de la plage.

Merci à l'avance





Avatar
isabelle
bonjour Mario,

For Each c In Range("Mois_Janvier")
x = x + 1
ItemLigne = Application.Ceiling(x / 7, 1)
Next

isabelle

Bonjour-bonsoir.

je vais tenter d'être le plus claire possible ...

Sur une feuille j'ai plusieurs plages nommées (12). "Mois_Janvier",
"Mois_Fevrier" et ainsi de suite pour les 12 mois. Chaque plage comportes 5
lignes par 7 collones. j'utilise
For Each c In Range("Mois_Janvier")
next c

pour passer une a une les divers cellules contenu dans la plage. Je veux
savoir si la cellule trouvée ce trouve sur la 1er, 2em, 3em, 4em ou 5em
ligne de ma plage ce qui me permeterais de la comparer avec le no.semaine
d'une date de janvier. la facon que j ai imaginé est d'insérer à
l'intérieur de la boucle for un select case c.row.

Auriez vous une idée plus élégante de récupérer le no de la ligne de la
plage.

Merci à l'avance





Avatar
isabelle
ps/

si le nombre de colonnes est inconnus :

Set plg = Range("Mois_Janvier")
For Each c In plg
x = x + 1
ItemLigne = Application.Ceiling(x / plg.Columns.Count, 1)
Next

isabelle

bonjour Mario,

For Each c In Range("Mois_Janvier")
x = x + 1
ItemLigne = Application.Ceiling(x / 7, 1)
Next


Avatar
Tatanka
ReBonjour,

Pas sûr de bien comprendre ce que tu veux obtenir ;-(
Supposons que tu fais la tournée des cellules du
mois de mars. Que veux-tu qui arrive quand tu trouves
une certaine valeur ?
Veux-tu savoir si elle apparaît dans la même ligne et
la même colonne du mois de janvier ?
Et si oui, que veux-tu qui se passe ?
Veux-tu savoir si elle apparaît dans la même ligne
du mois de janvier ?
Et si oui, que veux-tu qui se passe ?
...

Serge


"Tatanka" a écrit dans le message de news: %
Salut Mario,

Peut-être quelque chose du genre :

Sub Ligne_Sélection()
Set ici = Selection
PL = ici(1).Row
For Each c In ici
MsgBox c.Row - PL + 1
Next c
End Sub

Serge


"Mario Limoges" a écrit dans le message de news: 4_nkj.16490$
Bonjour-bonsoir.

je vais tenter d'être le plus claire possible ...

Sur une feuille j'ai plusieurs plages nommées (12). "Mois_Janvier", "Mois_Fevrier" et ainsi de suite pour les 12 mois. Chaque
plage comportes 5 lignes par 7 collones. j'utilise
For Each c In Range("Mois_Janvier")
next c

pour passer une a une les divers cellules contenu dans la plage. Je veux savoir si la cellule trouvée ce trouve sur la 1er, 2em,
3em, 4em ou 5em ligne de ma plage ce qui me permeterais de la comparer avec le no.semaine d'une date de janvier. la facon que j
ai imaginé est d'insérer à l'intérieur de la boucle for un select case c.row.

Auriez vous une idée plus élégante de récupérer le no de la ligne de la plage.

Merci à l'avance









Avatar
Mario Limoges
Merci Tatanka de lintérêt porté.

effectivement ca fonctione bien :-)

"Tatanka" a écrit dans le message de news:
%
Salut Mario,

Peut-être quelque chose du genre :

Sub Ligne_Sélection()
Set ici = Selection
PL = ici(1).Row
For Each c In ici
MsgBox c.Row - PL + 1
Next c
End Sub

Serge


"Mario Limoges" a écrit dans le message de
news: 4_nkj.16490$
Bonjour-bonsoir.

je vais tenter d'être le plus claire possible ...

Sur une feuille j'ai plusieurs plages nommées (12). "Mois_Janvier",
"Mois_Fevrier" et ainsi de suite pour les 12 mois. Chaque plage
comportes 5 lignes par 7 collones. j'utilise
For Each c In Range("Mois_Janvier")
next c

pour passer une a une les divers cellules contenu dans la plage. Je veux
savoir si la cellule trouvée ce trouve sur la 1er, 2em, 3em, 4em ou 5em
ligne de ma plage ce qui me permeterais de la comparer avec le no.semaine
d'une date de janvier. la facon que j ai imaginé est d'insérer à
l'intérieur de la boucle for un select case c.row.

Auriez vous une idée plus élégante de récupérer le no de la ligne de la
plage.

Merci à l'avance