Avant tout MERCI mais j'ai une petite question (si vous avez le temps)
Avec un jour de retard
Donc voilà
J'ai relus vos réponses
Et je crois que j'ai compris
J'ai changé et inséré les différentes parties de macro
ET CA MARCHE !!!!!!!!
C'est fou
On dirait que je commence à comprendre comment lancer une macro dans une
macro
MAIS, j'ai quand même une petite question
Dans la macro ci-dessous tout va bien
xxxxxxxxxxxxxxxxxxx
Private Sub Worksheet_BeforeDoubleClick(ByVal Target _
As Excel.Range, Cancel As Boolean)
Dim i As Long
Application.ScreenUpdating = False
If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub
For i = 1 To Range("a4:cc1000").Rows.Count
If Range("a4:cc1000").Rows(i).Row = Target.Row Then
Sheets("Offer-Show").[a2] = i
End If
Sheets("Offer-Show").Select
Next
Call Button1028_Click
End Sub
xxxxxxxxxxxxxxxxx
Le Call lance celle-ci
xxxxxxxxxxxxxxxxx
Sub Button1028_Click()
Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp))
c.EntireRow.Hidden = (c.Value = 0)
Next c
End Sub
xxxxxxxxxxxxxxxxxxx
La macro ouvre la feuille Offer-Show et ne montre que les lignes ou il y a
une valeur en C
Mais quand j'insère le texte complet, cela réagit plus comme il faut
xxxxxxxxxxxxxxxxxxx
Private Sub Worksheet_BeforeDoubleClick(ByVal Target _
As Excel.Range, Cancel As Boolean)
Dim i As Long
Application.ScreenUpdating = False
If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub
For i = 1 To Range("a4:cc1000").Rows.Count
If Range("a4:cc1000").Rows(i).Row = Target.Row Then
Sheets("Offer-Show").[a2] = i
End If
Sheets("Offer-Show").Select
Next
'
Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp))
c.EntireRow.Hidden = (c.Value = 0)
Next c
End Sub
xxxxxxxxxxxxxxxxxxxxx
J'explique
Avec la version Call il me montre toutes les lignes requises
Avec la version complète, les lignes affichées sont les mêmes
Donc il fait une ré-actualisation des valeurs, mais pas les lignes à
afficher
Ce n'est pas grâve, parce que cela marche avec le Call
Mais je voudrais comprendre ce que je fais de mal
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
cousinhub
Bonsoir, pour reprendre ton exemple : le code se produit dès l'évènement Doubleclic sur ta feuille, et est donc inscrit dans le code de la feuille. A partir de ce moment-là, si tu sélectionnes une autre feuille, ben, ça marche pas. Pour y remédier, à la place de sélectionner ta feuille :
Sheets("Offer-Show").Select tu écris comme ceci :
With Sheets("Offer-Show") For Each c In .Range(.[E2], .[E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End With
N'oublie pas les . (points) devant .Range et .[E2], .[E65000].End(xlUp) Bon courage
Bonjour
Avant tout MERCI mais j'ai une petite question (si vous avez le temps)
Avec un jour de retard
Donc voilà
J'ai relus vos réponses Et je crois que j'ai compris
J'ai changé et inséré les différentes parties de macro
ET CA MARCHE !!!!!!!!
C'est fou
On dirait que je commence à comprendre comment lancer une macro dans une macro
MAIS, j'ai quand même une petite question Dans la macro ci-dessous tout va bien
xxxxxxxxxxxxxxxxxxx Private Sub Worksheet_BeforeDoubleClick(ByVal Target _ As Excel.Range, Cancel As Boolean) Dim i As Long Application.ScreenUpdating = False If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub For i = 1 To Range("a4:cc1000").Rows.Count If Range("a4:cc1000").Rows(i).Row = Target.Row Then Sheets("Offer-Show").[a2] = i End If Sheets("Offer-Show").Select Next Call Button1028_Click End Sub xxxxxxxxxxxxxxxxx
Le Call lance celle-ci
xxxxxxxxxxxxxxxxx Sub Button1028_Click() Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End Sub xxxxxxxxxxxxxxxxxxx
La macro ouvre la feuille Offer-Show et ne montre que les lignes ou il y a une valeur en C Mais quand j'insère le texte complet, cela réagit plus comme il faut
xxxxxxxxxxxxxxxxxxx Private Sub Worksheet_BeforeDoubleClick(ByVal Target _ As Excel.Range, Cancel As Boolean) Dim i As Long Application.ScreenUpdating = False If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub For i = 1 To Range("a4:cc1000").Rows.Count If Range("a4:cc1000").Rows(i).Row = Target.Row Then Sheets("Offer-Show").[a2] = i End If Sheets("Offer-Show").Select Next '
Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End Sub
xxxxxxxxxxxxxxxxxxxxx
J'explique Avec la version Call il me montre toutes les lignes requises Avec la version complète, les lignes affichées sont les mêmes Donc il fait une ré-actualisation des valeurs, mais pas les lignes à afficher
Ce n'est pas grâve, parce que cela marche avec le Call Mais je voudrais comprendre ce que je fais de mal
Un grand merci à vous deux
A bientôt
Rex
Bonsoir,
pour reprendre ton exemple :
le code se produit dès l'évènement Doubleclic sur ta feuille, et est
donc inscrit dans le code de la feuille. A partir de ce moment-là, si tu
sélectionnes une autre feuille, ben, ça marche pas.
Pour y remédier, à la place de sélectionner ta feuille :
Sheets("Offer-Show").Select
tu écris comme ceci :
With Sheets("Offer-Show")
For Each c In .Range(.[E2], .[E65000].End(xlUp))
c.EntireRow.Hidden = (c.Value = 0)
Next c
End With
N'oublie pas les . (points) devant .Range et .[E2], .[E65000].End(xlUp)
Bon courage
Bonjour
Avant tout MERCI mais j'ai une petite question (si vous avez le temps)
Avec un jour de retard
Donc voilà
J'ai relus vos réponses
Et je crois que j'ai compris
J'ai changé et inséré les différentes parties de macro
ET CA MARCHE !!!!!!!!
C'est fou
On dirait que je commence à comprendre comment lancer une macro dans une
macro
MAIS, j'ai quand même une petite question
Dans la macro ci-dessous tout va bien
xxxxxxxxxxxxxxxxxxx
Private Sub Worksheet_BeforeDoubleClick(ByVal Target _
As Excel.Range, Cancel As Boolean)
Dim i As Long
Application.ScreenUpdating = False
If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub
For i = 1 To Range("a4:cc1000").Rows.Count
If Range("a4:cc1000").Rows(i).Row = Target.Row Then
Sheets("Offer-Show").[a2] = i
End If
Sheets("Offer-Show").Select
Next
Call Button1028_Click
End Sub
xxxxxxxxxxxxxxxxx
Le Call lance celle-ci
xxxxxxxxxxxxxxxxx
Sub Button1028_Click()
Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp))
c.EntireRow.Hidden = (c.Value = 0)
Next c
End Sub
xxxxxxxxxxxxxxxxxxx
La macro ouvre la feuille Offer-Show et ne montre que les lignes ou il y a
une valeur en C
Mais quand j'insère le texte complet, cela réagit plus comme il faut
xxxxxxxxxxxxxxxxxxx
Private Sub Worksheet_BeforeDoubleClick(ByVal Target _
As Excel.Range, Cancel As Boolean)
Dim i As Long
Application.ScreenUpdating = False
If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub
For i = 1 To Range("a4:cc1000").Rows.Count
If Range("a4:cc1000").Rows(i).Row = Target.Row Then
Sheets("Offer-Show").[a2] = i
End If
Sheets("Offer-Show").Select
Next
'
Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp))
c.EntireRow.Hidden = (c.Value = 0)
Next c
End Sub
xxxxxxxxxxxxxxxxxxxxx
J'explique
Avec la version Call il me montre toutes les lignes requises
Avec la version complète, les lignes affichées sont les mêmes
Donc il fait une ré-actualisation des valeurs, mais pas les lignes à
afficher
Ce n'est pas grâve, parce que cela marche avec le Call
Mais je voudrais comprendre ce que je fais de mal
Bonsoir, pour reprendre ton exemple : le code se produit dès l'évènement Doubleclic sur ta feuille, et est donc inscrit dans le code de la feuille. A partir de ce moment-là, si tu sélectionnes une autre feuille, ben, ça marche pas. Pour y remédier, à la place de sélectionner ta feuille :
Sheets("Offer-Show").Select tu écris comme ceci :
With Sheets("Offer-Show") For Each c In .Range(.[E2], .[E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End With
N'oublie pas les . (points) devant .Range et .[E2], .[E65000].End(xlUp) Bon courage
Bonjour
Avant tout MERCI mais j'ai une petite question (si vous avez le temps)
Avec un jour de retard
Donc voilà
J'ai relus vos réponses Et je crois que j'ai compris
J'ai changé et inséré les différentes parties de macro
ET CA MARCHE !!!!!!!!
C'est fou
On dirait que je commence à comprendre comment lancer une macro dans une macro
MAIS, j'ai quand même une petite question Dans la macro ci-dessous tout va bien
xxxxxxxxxxxxxxxxxxx Private Sub Worksheet_BeforeDoubleClick(ByVal Target _ As Excel.Range, Cancel As Boolean) Dim i As Long Application.ScreenUpdating = False If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub For i = 1 To Range("a4:cc1000").Rows.Count If Range("a4:cc1000").Rows(i).Row = Target.Row Then Sheets("Offer-Show").[a2] = i End If Sheets("Offer-Show").Select Next Call Button1028_Click End Sub xxxxxxxxxxxxxxxxx
Le Call lance celle-ci
xxxxxxxxxxxxxxxxx Sub Button1028_Click() Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End Sub xxxxxxxxxxxxxxxxxxx
La macro ouvre la feuille Offer-Show et ne montre que les lignes ou il y a une valeur en C Mais quand j'insère le texte complet, cela réagit plus comme il faut
xxxxxxxxxxxxxxxxxxx Private Sub Worksheet_BeforeDoubleClick(ByVal Target _ As Excel.Range, Cancel As Boolean) Dim i As Long Application.ScreenUpdating = False If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub For i = 1 To Range("a4:cc1000").Rows.Count If Range("a4:cc1000").Rows(i).Row = Target.Row Then Sheets("Offer-Show").[a2] = i End If Sheets("Offer-Show").Select Next '
Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End Sub
xxxxxxxxxxxxxxxxxxxxx
J'explique Avec la version Call il me montre toutes les lignes requises Avec la version complète, les lignes affichées sont les mêmes Donc il fait une ré-actualisation des valeurs, mais pas les lignes à afficher
Ce n'est pas grâve, parce que cela marche avec le Call Mais je voudrais comprendre ce que je fais de mal
Un grand merci à vous deux
A bientôt
Rex
Rex
Bonsoir et MERCI
J'essaye cela tantôt Et je te tiens au courant
A bientôt
Rex
PS As-tu une idée pour mon message Compteur manuel?
"cousinhub" a écrit dans le message de news:
Bonsoir, pour reprendre ton exemple : le code se produit dès l'évènement Doubleclic sur ta feuille, et est donc inscrit dans le code de la feuille. A partir de ce moment-là, si tu sélectionnes une autre feuille, ben, ça marche pas. Pour y remédier, à la place de sélectionner ta feuille :
Sheets("Offer-Show").Select tu écris comme ceci :
With Sheets("Offer-Show") For Each c In .Range(.[E2], .[E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End With
N'oublie pas les . (points) devant .Range et .[E2], .[E65000].End(xlUp) Bon courage
Bonjour
Avant tout MERCI mais j'ai une petite question (si vous avez le temps)
Avec un jour de retard
Donc voilà
J'ai relus vos réponses Et je crois que j'ai compris
J'ai changé et inséré les différentes parties de macro
ET CA MARCHE !!!!!!!!
C'est fou
On dirait que je commence à comprendre comment lancer une macro dans une macro
MAIS, j'ai quand même une petite question Dans la macro ci-dessous tout va bien
xxxxxxxxxxxxxxxxxxx Private Sub Worksheet_BeforeDoubleClick(ByVal Target _ As Excel.Range, Cancel As Boolean) Dim i As Long Application.ScreenUpdating = False If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub For i = 1 To Range("a4:cc1000").Rows.Count If Range("a4:cc1000").Rows(i).Row = Target.Row Then Sheets("Offer-Show").[a2] = i End If Sheets("Offer-Show").Select Next Call Button1028_Click End Sub xxxxxxxxxxxxxxxxx
Le Call lance celle-ci
xxxxxxxxxxxxxxxxx Sub Button1028_Click() Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End Sub xxxxxxxxxxxxxxxxxxx
La macro ouvre la feuille Offer-Show et ne montre que les lignes ou il y a
une valeur en C Mais quand j'insère le texte complet, cela réagit plus comme il faut
xxxxxxxxxxxxxxxxxxx Private Sub Worksheet_BeforeDoubleClick(ByVal Target _ As Excel.Range, Cancel As Boolean) Dim i As Long Application.ScreenUpdating = False If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub For i = 1 To Range("a4:cc1000").Rows.Count If Range("a4:cc1000").Rows(i).Row = Target.Row Then Sheets("Offer-Show").[a2] = i End If Sheets("Offer-Show").Select Next '
Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End Sub
xxxxxxxxxxxxxxxxxxxxx
J'explique Avec la version Call il me montre toutes les lignes requises Avec la version complète, les lignes affichées sont les mêmes Donc il fait une ré-actualisation des valeurs, mais pas les lignes à afficher
Ce n'est pas grâve, parce que cela marche avec le Call Mais je voudrais comprendre ce que je fais de mal
Un grand merci à vous deux
A bientôt
Rex
Bonsoir et MERCI
J'essaye cela tantôt
Et je te tiens au courant
A bientôt
Rex
PS As-tu une idée pour mon message Compteur manuel?
"cousinhub" <pmcsnhb_nospam@aol.com> a écrit dans le message de news:
Oba7gK6oHHA.5084@TK2MSFTNGP02.phx.gbl...
Bonsoir,
pour reprendre ton exemple :
le code se produit dès l'évènement Doubleclic sur ta feuille, et est
donc inscrit dans le code de la feuille. A partir de ce moment-là, si tu
sélectionnes une autre feuille, ben, ça marche pas.
Pour y remédier, à la place de sélectionner ta feuille :
Sheets("Offer-Show").Select
tu écris comme ceci :
With Sheets("Offer-Show")
For Each c In .Range(.[E2], .[E65000].End(xlUp))
c.EntireRow.Hidden = (c.Value = 0)
Next c
End With
N'oublie pas les . (points) devant .Range et .[E2], .[E65000].End(xlUp)
Bon courage
Bonjour
Avant tout MERCI mais j'ai une petite question (si vous avez le
temps)
Avec un jour de retard
Donc voilà
J'ai relus vos réponses
Et je crois que j'ai compris
J'ai changé et inséré les différentes parties de macro
ET CA MARCHE !!!!!!!!
C'est fou
On dirait que je commence à comprendre comment lancer une macro dans une
macro
MAIS, j'ai quand même une petite question
Dans la macro ci-dessous tout va bien
xxxxxxxxxxxxxxxxxxx
Private Sub Worksheet_BeforeDoubleClick(ByVal Target _
As Excel.Range, Cancel As Boolean)
Dim i As Long
Application.ScreenUpdating = False
If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub
For i = 1 To Range("a4:cc1000").Rows.Count
If Range("a4:cc1000").Rows(i).Row = Target.Row Then
Sheets("Offer-Show").[a2] = i
End If
Sheets("Offer-Show").Select
Next
Call Button1028_Click
End Sub
xxxxxxxxxxxxxxxxx
Le Call lance celle-ci
xxxxxxxxxxxxxxxxx
Sub Button1028_Click()
Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp))
c.EntireRow.Hidden = (c.Value = 0)
Next c
End Sub
xxxxxxxxxxxxxxxxxxx
La macro ouvre la feuille Offer-Show et ne montre que les lignes ou il y
a
une valeur en C
Mais quand j'insère le texte complet, cela réagit plus comme il faut
xxxxxxxxxxxxxxxxxxx
Private Sub Worksheet_BeforeDoubleClick(ByVal Target _
As Excel.Range, Cancel As Boolean)
Dim i As Long
Application.ScreenUpdating = False
If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub
For i = 1 To Range("a4:cc1000").Rows.Count
If Range("a4:cc1000").Rows(i).Row = Target.Row Then
Sheets("Offer-Show").[a2] = i
End If
Sheets("Offer-Show").Select
Next
'
Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp))
c.EntireRow.Hidden = (c.Value = 0)
Next c
End Sub
xxxxxxxxxxxxxxxxxxxxx
J'explique
Avec la version Call il me montre toutes les lignes requises
Avec la version complète, les lignes affichées sont les mêmes
Donc il fait une ré-actualisation des valeurs, mais pas les lignes à
afficher
Ce n'est pas grâve, parce que cela marche avec le Call
Mais je voudrais comprendre ce que je fais de mal
PS As-tu une idée pour mon message Compteur manuel?
"cousinhub" a écrit dans le message de news:
Bonsoir, pour reprendre ton exemple : le code se produit dès l'évènement Doubleclic sur ta feuille, et est donc inscrit dans le code de la feuille. A partir de ce moment-là, si tu sélectionnes une autre feuille, ben, ça marche pas. Pour y remédier, à la place de sélectionner ta feuille :
Sheets("Offer-Show").Select tu écris comme ceci :
With Sheets("Offer-Show") For Each c In .Range(.[E2], .[E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End With
N'oublie pas les . (points) devant .Range et .[E2], .[E65000].End(xlUp) Bon courage
Bonjour
Avant tout MERCI mais j'ai une petite question (si vous avez le temps)
Avec un jour de retard
Donc voilà
J'ai relus vos réponses Et je crois que j'ai compris
J'ai changé et inséré les différentes parties de macro
ET CA MARCHE !!!!!!!!
C'est fou
On dirait que je commence à comprendre comment lancer une macro dans une macro
MAIS, j'ai quand même une petite question Dans la macro ci-dessous tout va bien
xxxxxxxxxxxxxxxxxxx Private Sub Worksheet_BeforeDoubleClick(ByVal Target _ As Excel.Range, Cancel As Boolean) Dim i As Long Application.ScreenUpdating = False If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub For i = 1 To Range("a4:cc1000").Rows.Count If Range("a4:cc1000").Rows(i).Row = Target.Row Then Sheets("Offer-Show").[a2] = i End If Sheets("Offer-Show").Select Next Call Button1028_Click End Sub xxxxxxxxxxxxxxxxx
Le Call lance celle-ci
xxxxxxxxxxxxxxxxx Sub Button1028_Click() Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End Sub xxxxxxxxxxxxxxxxxxx
La macro ouvre la feuille Offer-Show et ne montre que les lignes ou il y a
une valeur en C Mais quand j'insère le texte complet, cela réagit plus comme il faut
xxxxxxxxxxxxxxxxxxx Private Sub Worksheet_BeforeDoubleClick(ByVal Target _ As Excel.Range, Cancel As Boolean) Dim i As Long Application.ScreenUpdating = False If Intersect(Target, Range("a4:cc1000")) Is Nothing Then Exit Sub For i = 1 To Range("a4:cc1000").Rows.Count If Range("a4:cc1000").Rows(i).Row = Target.Row Then Sheets("Offer-Show").[a2] = i End If Sheets("Offer-Show").Select Next '
Application.ScreenUpdating = False
For Each c In Range([E2], [E65000].End(xlUp)) c.EntireRow.Hidden = (c.Value = 0) Next c End Sub
xxxxxxxxxxxxxxxxxxxxx
J'explique Avec la version Call il me montre toutes les lignes requises Avec la version complète, les lignes affichées sont les mêmes Donc il fait une ré-actualisation des valeurs, mais pas les lignes à afficher
Ce n'est pas grâve, parce que cela marche avec le Call Mais je voudrais comprendre ce que je fais de mal