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

Recherche N° de lignes

9 réponses
Avatar
JulieH
Bonjour à toutes et tous, et meilleurs voeux,

J'ai un fichier avec 23000 lignes environ, en colonne M, j'ai des dates
au format aaaass.
J'appelle un Userform dans lequel j'indique une semaine (par exemple
200717). Je classe l'ensemble des données sur la colonne M. Je
souhaiterais retrouver par VBA le numéro de ligne de la 1ière semaine de
200717.
Je vois cela possible, peut-être facile même, mais je n'y arrive pas.
Peut-être l'esprit embrumé !!!

Merci pour vos idées.

9 réponses

Avatar
Greg
qualques posts plus bas, il me semble que je suis dans l'attente de quelque
chose de très similaire ("atteindre une cellule"). Si ça peut t'aider...

Greg

"JulieH" a écrit dans le message de
news:
Bonjour à toutes et tous, et meilleurs voeux,

J'ai un fichier avec 23000 lignes environ, en colonne M, j'ai des dates
au format aaaass.
J'appelle un Userform dans lequel j'indique une semaine (par exemple
200717). Je classe l'ensemble des données sur la colonne M. Je
souhaiterais retrouver par VBA le numéro de ligne de la 1ière semaine de
200717.
Je vois cela possible, peut-être facile même, mais je n'y arrive pas.
Peut-être l'esprit embrumé !!!

Merci pour vos idées.


Avatar
Ellimac
Bonjour Julie,

Avec la valeur recherchée dans TextBox1
Sub Macro1()
n = Columns(13).Find(What:= TextBox1, After:=Range("m1"),
LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
False, SearchFormat:úlse).Row
End Sub

Camille


Bonjour à toutes et tous, et meilleurs voeux,

J'ai un fichier avec 23000 lignes environ, en colonne M, j'ai des dates
au format aaaass.
J'appelle un Userform dans lequel j'indique une semaine (par exemple
200717). Je classe l'ensemble des données sur la colonne M. Je
souhaiterais retrouver par VBA le numéro de ligne de la 1ière semaine de
200717.
Je vois cela possible, peut-être facile même, mais je n'y arrive pas.
Peut-être l'esprit embrumé !!!

Merci pour vos idées.



Avatar
JulieH
Bonjour et merci pour ta réponse,

J'ai encore quelques "bricoles" à adapter mais après un essai rapide de
MsgBox, j'ai bien la ligne attendue.

Question subsidiaire : sais-tu s'il y a un moyen pour repérer la
dernière ligne dans laquelle on trouve la valeur de la Textbox1 ?

Encore merci pour ton aide.

Julie

Bonjour Julie,

Avec la valeur recherchée dans TextBox1
Sub Macro1()
n = Columns(13).Find(What:= TextBox1, After:=Range("m1"),
LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
False, SearchFormat:úlse).Row
End Sub

Camille


Bonjour à toutes et tous, et meilleurs voeux,

J'ai un fichier avec 23000 lignes environ, en colonne M, j'ai des dates
au format aaaass.
J'appelle un Userform dans lequel j'indique une semaine (par exemple
200717). Je classe l'ensemble des données sur la colonne M. Je
souhaiterais retrouver par VBA le numéro de ligne de la 1ière semaine de
200717.
Je vois cela possible, peut-être facile même, mais je n'y arrive pas.
Peut-être l'esprit embrumé !!!

Merci pour vos idées.





Avatar
FFO
Salut Julie

En droite ligne de ce que t'a proposé Ellimac une variante pour trouver le
dernier :

Columns(13).Find(What:=TextBox1, After:=Range("M1"), LookIn:=xlFormulas,
LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:úlse).Activate
n = ActiveCell.Row
Do While ActiveCell.Row >= n
Selection.FindNext(After:¬tiveCell).Activate
If ActiveCell.Row > n Then
n = ActiveCell.Row
Else
Exit Do
End If
Loop
MsgBox (n)

Celà devrait faire
Dis moi !!!


Bonjour et merci pour ta réponse,

J'ai encore quelques "bricoles" à adapter mais après un essai rapide de
MsgBox, j'ai bien la ligne attendue.

Question subsidiaire : sais-tu s'il y a un moyen pour repérer la
dernière ligne dans laquelle on trouve la valeur de la Textbox1 ?

Encore merci pour ton aide.

Julie

Bonjour Julie,

Avec la valeur recherchée dans TextBox1
Sub Macro1()
n = Columns(13).Find(What:= TextBox1, After:=Range("m1"),
LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
False, SearchFormat:úlse).Row
End Sub

Camille


Bonjour à toutes et tous, et meilleurs voeux,

J'ai un fichier avec 23000 lignes environ, en colonne M, j'ai des dates
au format aaaass.
J'appelle un Userform dans lequel j'indique une semaine (par exemple
200717). Je classe l'ensemble des données sur la colonne M. Je
souhaiterais retrouver par VBA le numéro de ligne de la 1ière semaine de
200717.
Je vois cela possible, peut-être facile même, mais je n'y arrive pas.
Peut-être l'esprit embrumé !!!

Merci pour vos idées.








Avatar
FFO
Rebonjour julie

J'ai constaté avec le code que je t'ai proposé une petite anomalie
n'assurant pas un fonctionnement correct à chaque coup

En lieu et place je te propose celui-ci nettement plus stable :

Columns(13).Find(What:=TextBox1, After:=Range("M1"), LookIn:=xlFormulas,
LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:úlse).Activate
n = ActiveCell.Row
Do While ActiveCell.Row >= n
Columns(13).FindNext(After:¬tiveCell).Activate
If ActiveCell.Row > n Then
n = ActiveCell.Row
Else
Exit Do
End If
Loop
MsgBox (n)

Mille excuses !!!
Celà devrait maintenant normalement faire
Dis moi !!!!


Bonjour et merci pour ta réponse,

J'ai encore quelques "bricoles" à adapter mais après un essai rapide de
MsgBox, j'ai bien la ligne attendue.

Question subsidiaire : sais-tu s'il y a un moyen pour repérer la
dernière ligne dans laquelle on trouve la valeur de la Textbox1 ?

Encore merci pour ton aide.

Julie

Bonjour Julie,

Avec la valeur recherchée dans TextBox1
Sub Macro1()
n = Columns(13).Find(What:= TextBox1, After:=Range("m1"),
LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
False, SearchFormat:úlse).Row
End Sub

Camille


Bonjour à toutes et tous, et meilleurs voeux,

J'ai un fichier avec 23000 lignes environ, en colonne M, j'ai des dates
au format aaaass.
J'appelle un Userform dans lequel j'indique une semaine (par exemple
200717). Je classe l'ensemble des données sur la colonne M. Je
souhaiterais retrouver par VBA le numéro de ligne de la 1ière semaine de
200717.
Je vois cela possible, peut-être facile même, mais je n'y arrive pas.
Peut-être l'esprit embrumé !!!

Merci pour vos idées.








Avatar
FFO
Rebonjour julie

J'ai constaté avec le code que je t'ai proposé une petite anomalie
n'assurant pas un fonctionnement correct à chaque coup

En lieu et place je te propose celui-ci nettement plus stable :

Columns(13).Find(What:=TextBox1, After:=Range("M1"), LookIn:=xlFormulas,
LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:úlse).Activate
n = ActiveCell.Row
Do While ActiveCell.Row >= n
Columns(13).FindNext(After:¬tiveCell).Activate
If ActiveCell.Row > n Then
n = ActiveCell.Row
Else
Exit Do
End If
Loop
MsgBox (n)

Mille excuses !!!
Celà devrait maintenant normalement faire
Dis moi !!!!



Bonjour et merci pour ta réponse,

J'ai encore quelques "bricoles" à adapter mais après un essai rapide de
MsgBox, j'ai bien la ligne attendue.

Question subsidiaire : sais-tu s'il y a un moyen pour repérer la
dernière ligne dans laquelle on trouve la valeur de la Textbox1 ?

Encore merci pour ton aide.

Julie

Bonjour Julie,

Avec la valeur recherchée dans TextBox1
Sub Macro1()
n = Columns(13).Find(What:= TextBox1, After:=Range("m1"),
LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
False, SearchFormat:úlse).Row
End Sub

Camille


Bonjour à toutes et tous, et meilleurs voeux,

J'ai un fichier avec 23000 lignes environ, en colonne M, j'ai des dates
au format aaaass.
J'appelle un Userform dans lequel j'indique une semaine (par exemple
200717). Je classe l'ensemble des données sur la colonne M. Je
souhaiterais retrouver par VBA le numéro de ligne de la 1ière semaine de
200717.
Je vois cela possible, peut-être facile même, mais je n'y arrive pas.
Peut-être l'esprit embrumé !!!

Merci pour vos idées.








Avatar
JulieH
Bonjour et Merci pour tes réponses,

J'avais testé sans succès la première solution mais je n'avais pas eu
la possibilité de répondre.
En revanche, la seconde proposition fonctionne parfaitement et
correspond à ce que je souhaite. Il ne me reste qu'à rassembler les
divers éléments.

Merci encore et meileurs voeux.

Julie



Rebonjour julie

J'ai constaté avec le code que je t'ai proposé une petite anomalie
n'assurant pas un fonctionnement correct à chaque coup

En lieu et place je te propose celui-ci nettement plus stable :

Columns(13).Find(What:=TextBox1, After:=Range("M1"), LookIn:=xlFormulas,
LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:úlse).Activate
n = ActiveCell.Row
Do While ActiveCell.Row >= n
Columns(13).FindNext(After:¬tiveCell).Activate
If ActiveCell.Row > n Then
n = ActiveCell.Row
Else
Exit Do
End If
Loop
MsgBox (n)

Mille excuses !!!
Celà devrait maintenant normalement faire
Dis moi !!!!



Bonjour et merci pour ta réponse,

J'ai encore quelques "bricoles" à adapter mais après un essai rapide de
MsgBox, j'ai bien la ligne attendue.

Question subsidiaire : sais-tu s'il y a un moyen pour repérer la
dernière ligne dans laquelle on trouve la valeur de la Textbox1 ?

Encore merci pour ton aide.

Julie

Bonjour Julie,

Avec la valeur recherchée dans TextBox1
Sub Macro1()
n = Columns(13).Find(What:= TextBox1, After:=Range("m1"),
LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
False, SearchFormat:úlse).Row
End Sub

Camille


Bonjour à toutes et tous, et meilleurs voeux,

J'ai un fichier avec 23000 lignes environ, en colonne M, j'ai des dates
au format aaaass.
J'appelle un Userform dans lequel j'indique une semaine (par exemple
200717). Je classe l'ensemble des données sur la colonne M. Je
souhaiterais retrouver par VBA le numéro de ligne de la 1ière semaine de
200717.
Je vois cela possible, peut-être facile même, mais je n'y arrive pas.
Peut-être l'esprit embrumé !!!

Merci pour vos idées.









Avatar
Ellimac
Bonsoir Julie,

Voici une solution pour trouver la ligne de la dernière occurence :

x = 1
n = Application.CountIf(Range("m1:m5000"), TextBox1.Value)
For cpt = 1 To n
x = Columns(13).Find(What:=TextBox1, After:=Range("m1").Offset(x - 1)).Row
Next
MsgBox x

Camille


Bonjour et merci pour ta réponse,

J'ai encore quelques "bricoles" à adapter mais après un essai rapide de
MsgBox, j'ai bien la ligne attendue.

Question subsidiaire : sais-tu s'il y a un moyen pour repérer la
dernière ligne dans laquelle on trouve la valeur de la Textbox1 ?

Encore merci pour ton aide.

Julie

Bonjour Julie,

Avec la valeur recherchée dans TextBox1
Sub Macro1()
n = Columns(13).Find(What:= TextBox1, After:=Range("m1"),
LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
False, SearchFormat:úlse).Row
End Sub

Camille


Bonjour à toutes et tous, et meilleurs voeux,

J'ai un fichier avec 23000 lignes environ, en colonne M, j'ai des dates
au format aaaass.
J'appelle un Userform dans lequel j'indique une semaine (par exemple
200717). Je classe l'ensemble des données sur la colonne M. Je
souhaiterais retrouver par VBA le numéro de ligne de la 1ière semaine de
200717.
Je vois cela possible, peut-être facile même, mais je n'y arrive pas.
Peut-être l'esprit embrumé !!!

Merci pour vos idées.








Avatar
JulieH
Bonsoir,

Cela fonctionne aussi très bien.

Merci à nouveau.

Julie

Bonsoir Julie,

Voici une solution pour trouver la ligne de la dernière occurence :

x = 1
n = Application.CountIf(Range("m1:m5000"), TextBox1.Value)
For cpt = 1 To n
x = Columns(13).Find(What:=TextBox1, After:=Range("m1").Offset(x - 1)).Row
Next
MsgBox x

Camille


Bonjour et merci pour ta réponse,

J'ai encore quelques "bricoles" à adapter mais après un essai rapide de
MsgBox, j'ai bien la ligne attendue.

Question subsidiaire : sais-tu s'il y a un moyen pour repérer la
dernière ligne dans laquelle on trouve la valeur de la Textbox1 ?

Encore merci pour ton aide.

Julie

Bonjour Julie,

Avec la valeur recherchée dans TextBox1
Sub Macro1()
n = Columns(13).Find(What:= TextBox1, After:=Range("m1"),
LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
False, SearchFormat:úlse).Row
End Sub

Camille


Bonjour à toutes et tous, et meilleurs voeux,

J'ai un fichier avec 23000 lignes environ, en colonne M, j'ai des dates
au format aaaass.
J'appelle un Userform dans lequel j'indique une semaine (par exemple
200717). Je classe l'ensemble des données sur la colonne M. Je
souhaiterais retrouver par VBA le numéro de ligne de la 1ière semaine de
200717.
Je vois cela possible, peut-être facile même, mais je n'y arrive pas.
Peut-être l'esprit embrumé !!!

Merci pour vos idées.