Recherche N° de lignes

Le
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.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Greg
Le #5111401
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" 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.


Ellimac
Le #5111391
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.



JulieH
Le #5111341
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.





FFO
Le #5340981
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.








FFO
Le #5340961
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.








FFO
Le #5340951
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.








JulieH
Le #5117991
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.









Ellimac
Le #5117881
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.








JulieH
Le #5117871
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.









Publicité
Poster une réponse
Anonyme