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

Toggle nouvel requete

20 réponses
Avatar
rthompson
Bonjour à toutes et tous

Je vais reposer ma question

Parceque je crois que comme j'ai dis que ça allais
plus personne ne suit ce fil

Donc je le relance

voici de quoi il s'agit



La petite macro du Toggle fonctionne impeccable

Mais elle cache toutes les lignes

Et j'aurais voulu un truc pour cacher ou montrer les lignes SANS affecter le
reste du tableau

Par exemple

A
1 Offer
2 Offer
3 Order
4 Paid
5 Invoiced
6 Paid

Je voudrais qu'en actionnant le toggle Offer, il me cache ou m'affiche les
lignes 1 et 2
Mais que les autres restent affichées tant je n'actionne pas le toggle Paid
ou Invoiced

C'est un peu comme un TCD
Mais pour des raisons patronales, je ne peux pas passer par là

Donc j'espère que l'un d'entre vous aura une solution

A très bientôt

Rex

Et ci-dssous le code


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = Not ((c.Value = ["Offer"]))
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = True
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

10 réponses

1 2
Avatar
Daniel
Bonjour.
essaie :

Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = c.Value = "Offer"
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = False
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub

Daniel
"rthompson" a écrit dans le message de
news: %23ELBA%
Bonjour à toutes et tous

Je vais reposer ma question

Parceque je crois que comme j'ai dis que ça allais
plus personne ne suit ce fil

Donc je le relance

voici de quoi il s'agit



La petite macro du Toggle fonctionne impeccable

Mais elle cache toutes les lignes

Et j'aurais voulu un truc pour cacher ou montrer les lignes SANS affecter
le
reste du tableau

Par exemple

A
1 Offer
2 Offer
3 Order
4 Paid
5 Invoiced
6 Paid

Je voudrais qu'en actionnant le toggle Offer, il me cache ou m'affiche les
lignes 1 et 2
Mais que les autres restent affichées tant je n'actionne pas le toggle
Paid
ou Invoiced

C'est un peu comme un TCD
Mais pour des raisons patronales, je ne peux pas passer par là

Donc j'espère que l'un d'entre vous aura une solution

A très bientôt

Rex

Et ci-dssous le code


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = Not ((c.Value = ["Offer"]))
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = True
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx






Avatar
rthompson
Bonsoir et merci de te pencher sur mon problème


C'est mieux que ce que moi j'avais

Mais


Il affiche tout

Ce que moi je voudrais et je sais que je suis un emmerd????
Et qu'en plus je m'explique mal

Enfin voici ce que je cherche à faire

En admettant que tout est visible (Offer, Oerder, Invoiced, Paid, etc)

Si je click sur le bouton Offer il les cache mais ne change rien aux autres
lignes
Et si je reclick desus, il me les affiche tout en ne changeant rien d'autre

Le but est de pouvoir (sans passer par TCD) afficher ou cacher ceux que l'on
souhaite

Je sais que via TCD ce serait tellement plus facile, mais comme je l'ai
signalé
Je ne peux pas passer par là, because of the boss

Je suis persuadé qu'il y a moyen de dire dans la macro de ne s'occuper que
des lignes contenant un mot X en colonne Y

Mais je ne trouve rien

Si tu as compris mon charabia
Et que tu as une idée

Merci à toi

Maintenant je vais rentrer manger

Je serais devant mon PC vers les dix heures

A tantôt
Ou à demain

Rex


"Daniel" a écrit dans le message de news:
%
Bonjour.
essaie :

Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = c.Value = "Offer"
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = False
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub

Daniel
"rthompson" a écrit dans le message de
news: %23ELBA%
Bonjour à toutes et tous

Je vais reposer ma question

Parceque je crois que comme j'ai dis que ça allais
plus personne ne suit ce fil

Donc je le relance

voici de quoi il s'agit



La petite macro du Toggle fonctionne impeccable

Mais elle cache toutes les lignes

Et j'aurais voulu un truc pour cacher ou montrer les lignes SANS affecter
le
reste du tableau

Par exemple

A
1 Offer
2 Offer
3 Order
4 Paid
5 Invoiced
6 Paid

Je voudrais qu'en actionnant le toggle Offer, il me cache ou m'affiche
les
lignes 1 et 2
Mais que les autres restent affichées tant je n'actionne pas le toggle
Paid
ou Invoiced

C'est un peu comme un TCD
Mais pour des raisons patronales, je ne peux pas passer par là

Donc j'espère que l'un d'entre vous aura une solution

A très bientôt

Rex

Et ci-dssous le code


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = Not ((c.Value = ["Offer"]))
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = True
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx










Avatar
isabelle
bonjour Rex,

je reprend la macro de Daniel presque à l'identique sauf pour la cellule I2 (la liste ayant été mit en range B1:B10 )

Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False
If ToggleButton1.Caption = "Show Offers" Then
For Each c In Range([b1], [b10])
c.EntireRow.Hidden = c.Value = "Offer"
Next c
ToggleButton1.Caption = "Hide Offers"
Else
For Each c In Range([b1], [b10])
c.EntireRow.Hidden = False
Next c
ToggleButton1.Caption = "Show Offers"
End If
Application.ScreenUpdating = True
End Sub

isabelle


Bonsoir et merci de te pencher sur mon problème


C'est mieux que ce que moi j'avais

Mais


Il affiche tout

Ce que moi je voudrais et je sais que je suis un emmerd????
Et qu'en plus je m'explique mal

Enfin voici ce que je cherche à faire

En admettant que tout est visible (Offer, Oerder, Invoiced, Paid, etc)

Si je click sur le bouton Offer il les cache mais ne change rien aux autres
lignes
Et si je reclick desus, il me les affiche tout en ne changeant rien d'autre

Le but est de pouvoir (sans passer par TCD) afficher ou cacher ceux que l'on
souhaite

Je sais que via TCD ce serait tellement plus facile, mais comme je l'ai
signalé
Je ne peux pas passer par là, because of the boss

Je suis persuadé qu'il y a moyen de dire dans la macro de ne s'occuper que
des lignes contenant un mot X en colonne Y

Mais je ne trouve rien

Si tu as compris mon charabia
Et que tu as une idée

Merci à toi

Maintenant je vais rentrer manger

Je serais devant mon PC vers les dix heures

A tantôt
Ou à demain

Rex


"Daniel" a écrit dans le message de news:
%

Bonjour.
essaie :

Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = c.Value = "Offer"
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = False
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub

Daniel
"rthompson" a écrit dans le message de
news: %23ELBA%

Bonjour à toutes et tous

Je vais reposer ma question

Parceque je crois que comme j'ai dis que ça allais
plus personne ne suit ce fil

Donc je le relance

voici de quoi il s'agit



La petite macro du Toggle fonctionne impeccable

Mais elle cache toutes les lignes

Et j'aurais voulu un truc pour cacher ou montrer les lignes SANS affecter
le
reste du tableau

Par exemple

A
1 Offer
2 Offer
3 Order
4 Paid
5 Invoiced
6 Paid

Je voudrais qu'en actionnant le toggle Offer, il me cache ou m'affiche
les
lignes 1 et 2
Mais que les autres restent affichées tant je n'actionne pas le toggle
Paid
ou Invoiced

C'est un peu comme un TCD
Mais pour des raisons patronales, je ne peux pas passer par là

Donc j'espère que l'un d'entre vous aura une solution

A très bientôt

Rex

Et ci-dssous le code


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = Not ((c.Value = ["Offer"]))
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = True
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx














Avatar
cousinhub
Bonjour, regarde le fichier joint :

http://cjoint.com/?iBtQAh1qV1


Private Sub ToggleButton1_Click()
If ToggleButton1.Value = True Then
ToggleButton1.Caption = "Avec Offer"
For Each c In Range([A2], [A7])
c.EntireRow.Hidden = ((c.Value = ["Offer"]))
Next c
Else
ToggleButton1.Caption = "Sans Offer"
Cells.EntireRow.Hidden = False
End If
End Sub

Private Sub UserForm_Initialize()
ToggleButton1.Caption = "Sans Offer"
End Sub


Bonjour à toutes et tous

Je vais reposer ma question

Parceque je crois que comme j'ai dis que ça allais
plus personne ne suit ce fil

Donc je le relance

voici de quoi il s'agit



La petite macro du Toggle fonctionne impeccable

Mais elle cache toutes les lignes

Et j'aurais voulu un truc pour cacher ou montrer les lignes SANS affecter le
reste du tableau

Par exemple

A
1 Offer
2 Offer
3 Order
4 Paid
5 Invoiced
6 Paid

Je voudrais qu'en actionnant le toggle Offer, il me cache ou m'affiche les
lignes 1 et 2
Mais que les autres restent affichées tant je n'actionne pas le toggle Paid
ou Invoiced

C'est un peu comme un TCD
Mais pour des raisons patronales, je ne peux pas passer par là

Donc j'espère que l'un d'entre vous aura une solution

A très bientôt

Rex

Et ci-dssous le code


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = Not ((c.Value = ["Offer"]))
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = True
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx






Avatar
garnote
Salut Rex,

Je n'ai pas suivi le fil depuis le début mais ...
Je suppose ici que ta liste verticale contient exclusivement des mots
choisis dans Paid, Invoiced et Offer. Je nomme cette liste « tableau »
Je suppose aussi que tu as trois ToggleButton nommés respectivement
Invoiced, Offer et Paid. Alors ces trois macros me semble convenir.
Est-ce le cas ?

Serge

Private Sub Invoiced_Click()
If Me.Invoiced.Value = True Then
For Each c In [tableau]
If c.Value = "Invoiced" Then c.EntireRow.Hidden = True
Next c
Else
For Each c In [tableau]
If c.Value = "Invoiced" Then c.EntireRow.Hidden = False
Next c
End If
End Sub

Private Sub Offer_Click()
If Me.Offer.Value = True Then
For Each c In [tableau]
If c.Value = "Offer" Then c.EntireRow.Hidden = True
Next c
Else
For Each c In [tableau]
If c.Value = "Offer" Then c.EntireRow.Hidden = False
Next c
End If
End Sub

Private Sub Paid_Click()
If Me.Paid.Value = True Then
For Each c In [tableau]
If c.Value = "Paid" Then c.EntireRow.Hidden = True
Next c
Else
For Each c In [tableau]
If c.Value = "Paid" Then c.EntireRow.Hidden = False
Next c
End If
End Sub





"rthompson" a écrit dans le message de news: %23ELBA%
Bonjour à toutes et tous

Je vais reposer ma question

Parceque je crois que comme j'ai dis que ça allais
plus personne ne suit ce fil

Donc je le relance

voici de quoi il s'agit



La petite macro du Toggle fonctionne impeccable

Mais elle cache toutes les lignes

Et j'aurais voulu un truc pour cacher ou montrer les lignes SANS affecter le
reste du tableau

Par exemple

A
1 Offer
2 Offer
3 Order
4 Paid
5 Invoiced
6 Paid

Je voudrais qu'en actionnant le toggle Offer, il me cache ou m'affiche les
lignes 1 et 2
Mais que les autres restent affichées tant je n'actionne pas le toggle Paid
ou Invoiced

C'est un peu comme un TCD
Mais pour des raisons patronales, je ne peux pas passer par là

Donc j'espère que l'un d'entre vous aura une solution

A très bientôt

Rex

Et ci-dssous le code


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = Not ((c.Value = ["Offer"]))
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = True
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx






Avatar
garnote
Salut infatigale travailleur,

Voici un exemple de ma proposition en espérant
qu'elle puisse te convenir :

http://cjoint.com/?iBugrhwfpX


Serge


"garnote" a écrit dans le message de news:
Salut Rex,

Je n'ai pas suivi le fil depuis le début mais ...
Je suppose ici que ta liste verticale contient exclusivement des mots
choisis dans Paid, Invoiced et Offer. Je nomme cette liste « tableau »
Je suppose aussi que tu as trois ToggleButton nommés respectivement
Invoiced, Offer et Paid. Alors ces trois macros me semble convenir.
Est-ce le cas ?

Serge

Private Sub Invoiced_Click()
If Me.Invoiced.Value = True Then
For Each c In [tableau]
If c.Value = "Invoiced" Then c.EntireRow.Hidden = True
Next c
Else
For Each c In [tableau]
If c.Value = "Invoiced" Then c.EntireRow.Hidden = False
Next c
End If
End Sub

Private Sub Offer_Click()
If Me.Offer.Value = True Then
For Each c In [tableau]
If c.Value = "Offer" Then c.EntireRow.Hidden = True
Next c
Else
For Each c In [tableau]
If c.Value = "Offer" Then c.EntireRow.Hidden = False
Next c
End If
End Sub

Private Sub Paid_Click()
If Me.Paid.Value = True Then
For Each c In [tableau]
If c.Value = "Paid" Then c.EntireRow.Hidden = True
Next c
Else
For Each c In [tableau]
If c.Value = "Paid" Then c.EntireRow.Hidden = False
Next c
End If
End Sub





"rthompson" a écrit dans le message de news: %23ELBA%
Bonjour à toutes et tous

Je vais reposer ma question

Parceque je crois que comme j'ai dis que ça allais
plus personne ne suit ce fil

Donc je le relance

voici de quoi il s'agit



La petite macro du Toggle fonctionne impeccable

Mais elle cache toutes les lignes

Et j'aurais voulu un truc pour cacher ou montrer les lignes SANS affecter le
reste du tableau

Par exemple

A
1 Offer
2 Offer
3 Order
4 Paid
5 Invoiced
6 Paid

Je voudrais qu'en actionnant le toggle Offer, il me cache ou m'affiche les
lignes 1 et 2
Mais que les autres restent affichées tant je n'actionne pas le toggle Paid
ou Invoiced

C'est un peu comme un TCD
Mais pour des raisons patronales, je ne peux pas passer par là

Donc j'espère que l'un d'entre vous aura une solution

A très bientôt

Rex

Et ci-dssous le code


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = Not ((c.Value = ["Offer"]))
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = True
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx










Avatar
garnote
Bon voilà autre chose. Si j'ouvre mon exemple sur Cjoint, mes
macros boguent mais si j'enregistre l'exemple sur mon ordi,
tout est OK. Pourquoi en est-il ainsi ?
Et bien sûr, je voulais écrire infatigable ;-)

Serge

"garnote" a écrit dans le message de news:
Salut infatigale travailleur,

Voici un exemple de ma proposition en espérant
qu'elle puisse te convenir :

http://cjoint.com/?iBugrhwfpX


Serge


"garnote" a écrit dans le message de news:
Salut Rex,

Je n'ai pas suivi le fil depuis le début mais ...
Je suppose ici que ta liste verticale contient exclusivement des mots
choisis dans Paid, Invoiced et Offer. Je nomme cette liste « tableau »
Je suppose aussi que tu as trois ToggleButton nommés respectivement
Invoiced, Offer et Paid. Alors ces trois macros me semble convenir.
Est-ce le cas ?

Serge

Private Sub Invoiced_Click()
If Me.Invoiced.Value = True Then
For Each c In [tableau]
If c.Value = "Invoiced" Then c.EntireRow.Hidden = True
Next c
Else
For Each c In [tableau]
If c.Value = "Invoiced" Then c.EntireRow.Hidden = False
Next c
End If
End Sub

Private Sub Offer_Click()
If Me.Offer.Value = True Then
For Each c In [tableau]
If c.Value = "Offer" Then c.EntireRow.Hidden = True
Next c
Else
For Each c In [tableau]
If c.Value = "Offer" Then c.EntireRow.Hidden = False
Next c
End If
End Sub

Private Sub Paid_Click()
If Me.Paid.Value = True Then
For Each c In [tableau]
If c.Value = "Paid" Then c.EntireRow.Hidden = True
Next c
Else
For Each c In [tableau]
If c.Value = "Paid" Then c.EntireRow.Hidden = False
Next c
End If
End Sub





"rthompson" a écrit dans le message de news: %23ELBA%
Bonjour à toutes et tous

Je vais reposer ma question

Parceque je crois que comme j'ai dis que ça allais
plus personne ne suit ce fil

Donc je le relance

voici de quoi il s'agit



La petite macro du Toggle fonctionne impeccable

Mais elle cache toutes les lignes

Et j'aurais voulu un truc pour cacher ou montrer les lignes SANS affecter le
reste du tableau

Par exemple

A
1 Offer
2 Offer
3 Order
4 Paid
5 Invoiced
6 Paid

Je voudrais qu'en actionnant le toggle Offer, il me cache ou m'affiche les
lignes 1 et 2
Mais que les autres restent affichées tant je n'actionne pas le toggle Paid
ou Invoiced

C'est un peu comme un TCD
Mais pour des raisons patronales, je ne peux pas passer par là

Donc j'espère que l'un d'entre vous aura une solution

A très bientôt

Rex

Et ci-dssous le code


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = Not ((c.Value = ["Offer"]))
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = True
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx














Avatar
Modeste
Bonsour® rthompson avec ferveur ;o))) vous nous disiez :

Ce que moi je voudrais et je sais que je suis un emmerd????
Et qu'en plus je m'explique mal

Enfin voici ce que je cherche à faire

En admettant que tout est visible (Offer, Oerder, Invoiced, Paid,
etc)
Si je click sur le bouton Offer il les cache mais ne change rien aux
autres lignes
Et si je reclick desus, il me les affiche tout en ne changeant rien
d'autre


Vite fait alors ....
comme ceci en quelque sorte
http://cjoint.com/?iBvEbfx4fi

raffinement possible :
une seule macro paramétrée devrait pouvoir etre utilisée en lieu et place de 6
macros quasiment identiques ... ;o)))
ou alors utiliser des cases à cocher (checkboxes) et application.caller


@+
;o)))

Avatar
Modeste
Bonsour® garnote avec ferveur ;o))) vous nous disiez :

Bon voilà autre chose. Si j'ouvre mon exemple sur Cjoint, mes
macros boguent mais si j'enregistre l'exemple sur mon ordi,
tout est OK. Pourquoi en est-il ainsi ?


because le userform sensé s'afficher est une fenetre et que cjoint ne gére pas
les fenetres... :-(((
@+
;o)))

Avatar
Rex
Honneur aux dames

N'en déplaise à JPS


Bonsoir Isabelle

Et merci

Je fais un tout petit commentaire sur un fil "étranger" et je me retrouve
innondé de propositions

Que dis-je de propositions ......... D'excellentes propositions

Et maintenant je me retrouve, comme la Marquise des Anges,
confronté au douloureux problème du choix

En effet les solutions macros sont fluides et claires
Les solutions Userforme font très pro!!!

C'est bien la première fois que les possibilités proposées sont tellement
différentes
tout en répondant a mes demandes

J'avais osé dire dans mon message que j'étais un emmer??????

Et bien me voilà bien emmerd???? à mon tour
Je ne suis pas sur de faire le bon choix


Enfin

Je crois que je vais pencher vers le userform surtout que (si je ne me
trompe)
on peut faire changer la couleur par la même macro

Style affiché en vert caché en rouge
Tu me diras que si ils sont affichés on les voit
Je te répondrai, juste, mais si il n'y en a pas????

Si le bouton Offre est vert et qu'il n'y a rien d'afficher
cela voudra dire qu'il n'y a pas d'offres ouvertes

Enfin, tout ceci pour te dire MERCI

Je garde ta macro dans mon dosier et il meservira sûrement un jour

A bientôt

Et bonne nuit

Rex ;-))) )))

OUPS Si ma mémoire est bonne, et elle ne l'est pas, ce serait plutôt
encore bonsoir pour toi






"isabelle" a écrit dans le message de news:
uVrKA$
bonjour Rex,

je reprend la macro de Daniel presque à l'identique sauf pour la cellule
I2 (la liste ayant été mit en range B1:B10 )


Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False
If ToggleButton1.Caption = "Show Offers" Then
For Each c In Range([b1], [b10])
c.EntireRow.Hidden = c.Value = "Offer"
Next c
ToggleButton1.Caption = "Hide Offers"
Else
For Each c In Range([b1], [b10])
c.EntireRow.Hidden = False
Next c
ToggleButton1.Caption = "Show Offers"
End If
Application.ScreenUpdating = True
End Sub

isabelle


Bonsoir et merci de te pencher sur mon problème


C'est mieux que ce que moi j'avais

Mais


Il affiche tout

Ce que moi je voudrais et je sais que je suis un emmerd????
Et qu'en plus je m'explique mal

Enfin voici ce que je cherche à faire

En admettant que tout est visible (Offer, Oerder, Invoiced, Paid, etc)

Si je click sur le bouton Offer il les cache mais ne change rien aux
autres


lignes
Et si je reclick desus, il me les affiche tout en ne changeant rien
d'autre



Le but est de pouvoir (sans passer par TCD) afficher ou cacher ceux que
l'on


souhaite

Je sais que via TCD ce serait tellement plus facile, mais comme je l'ai
signalé
Je ne peux pas passer par là, because of the boss

Je suis persuadé qu'il y a moyen de dire dans la macro de ne s'occuper
que


des lignes contenant un mot X en colonne Y

Mais je ne trouve rien

Si tu as compris mon charabia
Et que tu as une idée

Merci à toi

Maintenant je vais rentrer manger

Je serais devant mon PC vers les dix heures

A tantôt
Ou à demain

Rex


"Daniel" a écrit dans le message de news:
%

Bonjour.
essaie :

Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = c.Value = "Offer"
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = False
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub

Daniel
"rthompson" a écrit dans le message
de



news: %23ELBA%

Bonjour à toutes et tous

Je vais reposer ma question

Parceque je crois que comme j'ai dis que ça allais
plus personne ne suit ce fil

Donc je le relance

voici de quoi il s'agit



La petite macro du Toggle fonctionne impeccable

Mais elle cache toutes les lignes

Et j'aurais voulu un truc pour cacher ou montrer les lignes SANS
affecter




le
reste du tableau

Par exemple

A
1 Offer
2 Offer
3 Order
4 Paid
5 Invoiced
6 Paid

Je voudrais qu'en actionnant le toggle Offer, il me cache ou m'affiche
les
lignes 1 et 2
Mais que les autres restent affichées tant je n'actionne pas le toggle
Paid
ou Invoiced

C'est un peu comme un TCD
Mais pour des raisons patronales, je ne peux pas passer par là

Donc j'espère que l'un d'entre vous aura une solution

A très bientôt

Rex

Et ci-dssous le code


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False

If Range("I2") = "Offers Hidden" Then
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = Not ((c.Value = ["Offer"]))
Next c
Range("I2") = "Offers Shown"
ToggleButton1.Caption = "Hide Offers"

Else
For Each c In Range([H9], [H185])
c.EntireRow.Hidden = True
Next c
Range("I2") = "Offers Hidden"
ToggleButton1.Caption = "Show Offers"

End If
Application.ScreenUpdating = True

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
















1 2