Sub Atteindre()
On Error Resume Next
Set ici = ActiveCell
Set la = Sheets("liste")
For i = 1 To 15219
If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) = ici.Offset(0,
6).Value Then
la.Activate
Rows(i).Select
Exit Sub
End If
Next i
End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve
un tantinet lente. Zauriez un truc pour l'accélérer ?
Éviter de boucler ? Méthode Find ? ou ???
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
isabelle
bonjour Serge,
essai avec With la et Application.Goto .Rows(i)
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") With la For i = 1 To 15219 If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0, 6).Value Then Application.Goto .Rows(i) Exit Sub End If Next i End With End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") For i = 1 To 15219 If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) = ici.Offset(0, 6).Value Then la.Activate Rows(i).Select Exit Sub End If Next i End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve un tantinet lente. Zauriez un truc pour l'accélérer ? Éviter de boucler ? Méthode Find ? ou ???
Serge
bonjour Serge,
essai avec With la
et
Application.Goto .Rows(i)
Sub Atteindre()
On Error Resume Next
Set ici = ActiveCell
Set la = Sheets("liste")
With la
For i = 1 To 15219
If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0,
6).Value Then
Application.Goto .Rows(i)
Exit Sub
End If
Next i
End With
End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre()
On Error Resume Next
Set ici = ActiveCell
Set la = Sheets("liste")
For i = 1 To 15219
If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) = ici.Offset(0,
6).Value Then
la.Activate
Rows(i).Select
Exit Sub
End If
Next i
End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve
un tantinet lente. Zauriez un truc pour l'accélérer ?
Éviter de boucler ? Méthode Find ? ou ???
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") With la For i = 1 To 15219 If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0, 6).Value Then Application.Goto .Rows(i) Exit Sub End If Next i End With End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") For i = 1 To 15219 If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) = ici.Offset(0, 6).Value Then la.Activate Rows(i).Select Exit Sub End If Next i End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve un tantinet lente. Zauriez un truc pour l'accélérer ? Éviter de boucler ? Méthode Find ? ou ???
Serge
isabelle
il y a aussi cette formule qui retourne le numéro de ligne : {=EQUIV(1;(a=$A$1)*(b=$G$1);0)} matriciel si les colonnes D et E sont nommées a et b
isabelle
isabelle a écrit :
bonjour Serge,
essai avec With la et Application.Goto .Rows(i)
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") With la For i = 1 To 15219 If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0, 6).Value Then Application.Goto .Rows(i) Exit Sub End If Next i End With End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") For i = 1 To 15219 If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) = ici.Offset(0, 6).Value Then la.Activate Rows(i).Select Exit Sub End If Next i End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve un tantinet lente. Zauriez un truc pour l'accélérer ? Éviter de boucler ? Méthode Find ? ou ???
Serge
il y a aussi cette formule qui retourne le numéro de ligne :
{=EQUIV(1;(a=$A$1)*(b=$G$1);0)}
matriciel
si les colonnes D et E sont nommées a et b
isabelle
isabelle a écrit :
bonjour Serge,
essai avec With la
et
Application.Goto .Rows(i)
Sub Atteindre()
On Error Resume Next
Set ici = ActiveCell
Set la = Sheets("liste")
With la
For i = 1 To 15219
If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0,
6).Value Then
Application.Goto .Rows(i)
Exit Sub
End If
Next i
End With
End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre()
On Error Resume Next
Set ici = ActiveCell
Set la = Sheets("liste")
For i = 1 To 15219
If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) =
ici.Offset(0, 6).Value Then
la.Activate
Rows(i).Select
Exit Sub
End If
Next i
End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve
un tantinet lente. Zauriez un truc pour l'accélérer ?
Éviter de boucler ? Méthode Find ? ou ???
il y a aussi cette formule qui retourne le numéro de ligne : {=EQUIV(1;(a=$A$1)*(b=$G$1);0)} matriciel si les colonnes D et E sont nommées a et b
isabelle
isabelle a écrit :
bonjour Serge,
essai avec With la et Application.Goto .Rows(i)
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") With la For i = 1 To 15219 If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0, 6).Value Then Application.Goto .Rows(i) Exit Sub End If Next i End With End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") For i = 1 To 15219 If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) = ici.Offset(0, 6).Value Then la.Activate Rows(i).Select Exit Sub End If Next i End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve un tantinet lente. Zauriez un truc pour l'accélérer ? Éviter de boucler ? Méthode Find ? ou ???
Serge
isabelle
petite précision: les colonnes ne doivent pas être entière $D$1:$D$10000 et $E$1:$E$10000 sont nommées a et b
isabelle
isabelle a écrit :
il y a aussi cette formule qui retourne le numéro de ligne : {=EQUIV(1;(a=$A$1)*(b=$G$1);0)} matriciel si les colonnes D et E sont nommées a et b
isabelle
isabelle a écrit :
bonjour Serge,
essai avec With la et Application.Goto .Rows(i)
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") With la For i = 1 To 15219 If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0, 6).Value Then Application.Goto .Rows(i) Exit Sub End If Next i End With End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") For i = 1 To 15219 If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) = ici.Offset(0, 6).Value Then la.Activate Rows(i).Select Exit Sub End If Next i End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve un tantinet lente. Zauriez un truc pour l'accélérer ? Éviter de boucler ? Méthode Find ? ou ???
Serge
petite précision: les colonnes ne doivent pas être entière
$D$1:$D$10000 et $E$1:$E$10000 sont nommées a et b
isabelle
isabelle a écrit :
il y a aussi cette formule qui retourne le numéro de ligne :
{=EQUIV(1;(a=$A$1)*(b=$G$1);0)}
matriciel
si les colonnes D et E sont nommées a et b
isabelle
isabelle a écrit :
bonjour Serge,
essai avec With la
et
Application.Goto .Rows(i)
Sub Atteindre()
On Error Resume Next
Set ici = ActiveCell
Set la = Sheets("liste")
With la
For i = 1 To 15219
If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0,
6).Value Then
Application.Goto .Rows(i)
Exit Sub
End If
Next i
End With
End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre()
On Error Resume Next
Set ici = ActiveCell
Set la = Sheets("liste")
For i = 1 To 15219
If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) =
ici.Offset(0, 6).Value Then
la.Activate
Rows(i).Select
Exit Sub
End If
Next i
End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve
un tantinet lente. Zauriez un truc pour l'accélérer ?
Éviter de boucler ? Méthode Find ? ou ???
petite précision: les colonnes ne doivent pas être entière $D$1:$D$10000 et $E$1:$E$10000 sont nommées a et b
isabelle
isabelle a écrit :
il y a aussi cette formule qui retourne le numéro de ligne : {=EQUIV(1;(a=$A$1)*(b=$G$1);0)} matriciel si les colonnes D et E sont nommées a et b
isabelle
isabelle a écrit :
bonjour Serge,
essai avec With la et Application.Goto .Rows(i)
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") With la For i = 1 To 15219 If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0, 6).Value Then Application.Goto .Rows(i) Exit Sub End If Next i End With End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") For i = 1 To 15219 If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) = ici.Offset(0, 6).Value Then la.Activate Rows(i).Select Exit Sub End If Next i End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve un tantinet lente. Zauriez un truc pour l'accélérer ? Éviter de boucler ? Méthode Find ? ou ???
Serge
garnote
S'cuse Isabelle,
J'avais oublié de te répondre et de remercier. C'est maintenant fait et je te souhaite une bonne journée.
Serge, qui ces temps-ci, néglige un peu trop les formules au profit des macros ;-)
"isabelle" a écrit dans le message de news:
petite précision: les colonnes ne doivent pas être entière $D$1:$D$10000 et $E$1:$E$10000 sont nommées a et b
isabelle
isabelle a écrit :
il y a aussi cette formule qui retourne le numéro de ligne : {=EQUIV(1;(a=$A$1)*(b=$G$1);0)} matriciel si les colonnes D et E sont nommées a et b
isabelle
isabelle a écrit :
bonjour Serge,
essai avec With la et Application.Goto .Rows(i)
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") With la For i = 1 To 15219 If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0, 6).Value Then Application.Goto .Rows(i) Exit Sub End If Next i End With End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") For i = 1 To 15219 If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) = ici.Offset(0, 6).Value Then la.Activate Rows(i).Select Exit Sub End If Next i End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve un tantinet lente. Zauriez un truc pour l'accélérer ? Éviter de boucler ? Méthode Find ? ou ???
Serge
S'cuse Isabelle,
J'avais oublié de te répondre et de remercier.
C'est maintenant fait et je te souhaite une bonne journée.
Serge, qui ces temps-ci, néglige un peu trop les formules
au profit des macros ;-)
"isabelle" <i@v> a écrit dans le message de news:
e8QqptZTKHA.4144@TK2MSFTNGP02.phx.gbl...
petite précision: les colonnes ne doivent pas être entière
$D$1:$D$10000 et $E$1:$E$10000 sont nommées a et b
isabelle
isabelle a écrit :
il y a aussi cette formule qui retourne le numéro de ligne :
{=EQUIV(1;(a=$A$1)*(b=$G$1);0)}
matriciel
si les colonnes D et E sont nommées a et b
isabelle
isabelle a écrit :
bonjour Serge,
essai avec With la
et
Application.Goto .Rows(i)
Sub Atteindre()
On Error Resume Next
Set ici = ActiveCell
Set la = Sheets("liste")
With la
For i = 1 To 15219
If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0,
6).Value Then
Application.Goto .Rows(i)
Exit Sub
End If
Next i
End With
End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre()
On Error Resume Next
Set ici = ActiveCell
Set la = Sheets("liste")
For i = 1 To 15219
If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) =
ici.Offset(0, 6).Value Then
la.Activate
Rows(i).Select
Exit Sub
End If
Next i
End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve
un tantinet lente. Zauriez un truc pour l'accélérer ?
Éviter de boucler ? Méthode Find ? ou ???
J'avais oublié de te répondre et de remercier. C'est maintenant fait et je te souhaite une bonne journée.
Serge, qui ces temps-ci, néglige un peu trop les formules au profit des macros ;-)
"isabelle" a écrit dans le message de news:
petite précision: les colonnes ne doivent pas être entière $D$1:$D$10000 et $E$1:$E$10000 sont nommées a et b
isabelle
isabelle a écrit :
il y a aussi cette formule qui retourne le numéro de ligne : {=EQUIV(1;(a=$A$1)*(b=$G$1);0)} matriciel si les colonnes D et E sont nommées a et b
isabelle
isabelle a écrit :
bonjour Serge,
essai avec With la et Application.Goto .Rows(i)
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") With la For i = 1 To 15219 If .Cells(i, 4) = ici.Value And .Cells(i, 5) = ici.Offset(0, 6).Value Then Application.Goto .Rows(i) Exit Sub End If Next i End With End Sub
isabelle
garnote a écrit :
Bonjour,
Sub Atteindre() On Error Resume Next Set ici = ActiveCell Set la = Sheets("liste") For i = 1 To 15219 If la.Cells(i, 4) = ici.Value And la.Cells(i, 5) = ici.Offset(0, 6).Value Then la.Activate Rows(i).Select Exit Sub End If Next i End Sub
Cette macro fait ce qu'elle doit faire mais je la trouve un tantinet lente. Zauriez un truc pour l'accélérer ? Éviter de boucler ? Méthode Find ? ou ???
Serge
isabelle
salut Serge,
garnote a écrit :
Serge, qui ces temps-ci, néglige un peu trop les formules au profit des macros ;-)
sans oublier les plage nommées combiné avec les macro ;-) isabelle
salut Serge,
garnote a écrit :
Serge, qui ces temps-ci, néglige un peu trop les formules
au profit des macros ;-)
sans oublier les plage nommées combiné avec les macro ;-)
isabelle