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

Quelques questions en Macros

27 réponses
Avatar
Rex
Bonsoir et Joyeuse Pâques


J'ai quelques petis soucis avec des macros et des fonctions

ATTENTION il y a TROIS questions !!!!!

Voici la première

Dans une feuille je fais appelle à la fonction
=INDEX(Offers!$E$3:$E$3000;$A$3)

Et elle fonctionne (c'est le cas de le dire) très bien

MAIS

Si, dans la feuille "Offers" je supprime les lignes 4 - 7
Tous mes index deviennent =INDEX(Offers!$E$8:$E$3005;$A$3)

Avec un 8 à la place du 3

Et pour tant je vais devoir régulièrement supprimer des lignes (et pas
toutes en séquences)

Y a-t-il moyen de faire en sorte que cette fonction reste toujours de 3 à
3000?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Voici la deuxième

J'ai créé un bouton "Toggle" (et j'en suis fière, c'est une innovation pour
moi!)

Avec le code suivant
Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Exit Sub
End If
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End Sub


Je voudrais qu'avant de cacher les lignes 23 24 elle vide la cellule L23

Donc je fais Range("L23").ClearContents

Mais ou dois-je insèrer cette ligne?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Troisième et dernière pour ce soir

Quelle commande ou fonction peut-on insérer à la fin d'une macro
pour que l'on reviennent sur la feuille et la cellule d'ou on est parti?


Merci et à bientôt (ou demain)

Rex ;-)))))




Elle fait réference à une autre feuille

10 réponses

1 2 3
Avatar
cousinhub
Bonsoir,
joyeuses pâques également,

1/ à la place de prendre en référence des cellules, nommes une zone.
exemple : Insertion/Nom/Définir
nom : base (par exemple)
se réfère à : ÞCALER(Feuil1!$E$8;;;2992)
et ensuite, dans ta formule tu mets ;
=INDEX(base;$A$3)

2/ places ton instruction entre les lignes
End If
*****ici****

Rows("23:24").Hidden = True


3/ pour revenir sur ta feuille d'où tu as lancé ta macro, par exemple
Feuil1, tu mets en dernière ligne Sheets("Feuil1").Select

Bonne continuation

Bonsoir et Joyeuse Pâques


J'ai quelques petis soucis avec des macros et des fonctions

ATTENTION il y a TROIS questions !!!!!

Voici la première

Dans une feuille je fais appelle à la fonction
=INDEX(Offers!$E$3:$E$3000;$A$3)

Et elle fonctionne (c'est le cas de le dire) très bien

MAIS

Si, dans la feuille "Offers" je supprime les lignes 4 - 7
Tous mes index deviennent =INDEX(Offers!$E$8:$E$3005;$A$3)

Avec un 8 à la place du 3

Et pour tant je vais devoir régulièrement supprimer des lignes (et pas
toutes en séquences)

Y a-t-il moyen de faire en sorte que cette fonction reste toujours de 3 à
3000?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Voici la deuxième

J'ai créé un bouton "Toggle" (et j'en suis fière, c'est une innovation pour
moi!)

Avec le code suivant
Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Exit Sub
End If
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End Sub


Je voudrais qu'avant de cacher les lignes 23 24 elle vide la cellule L23

Donc je fais Range("L23").ClearContents

Mais ou dois-je insèrer cette ligne?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Troisième et dernière pour ce soir

Quelle commande ou fonction peut-on insérer à la fin d'une macro
pour que l'on reviennent sur la feuille et la cellule d'ou on est parti?


Merci et à bientôt (ou demain)

Rex ;-)))))




Elle fait réference à une autre feuille





Avatar
JB
Bonsoir,

Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Else
[L23].ClearContents
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End If
End Sub

Sub essai()
m_s = ActiveSheet.Name
m_c = ActiveCell.Address
....
....
Sheets(m_s).Select
Range(m_c).Select
End Sub

Cordialement JB

On 8 avr, 23:03, "Rex" wrote:
Bonsoir et Joyeuse Pâques

J'ai quelques petis soucis avec des macros et des fonctions

ATTENTION il y a TROIS questions !!!!!

Voici la première

Dans une feuille je fais appelle à la fonction
=INDEX(Offers!$E$3:$E$3000;$A$3)

Et elle fonctionne (c'est le cas de le dire) très bien

MAIS

Si, dans la feuille "Offers" je supprime les lignes 4 - 7
Tous mes index deviennent =INDEX(Offers!$E$8:$E$3005;$A$3)

Avec un 8 à la place du 3

Et pour tant je vais devoir régulièrement supprimer des lignes (et pas
toutes en séquences)

Y a-t-il moyen de faire en sorte que cette fonction reste toujours de 3 à
3000?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Voici la deuxième

J'ai créé un bouton "Toggle" (et j'en suis fière, c'est une innovat ion pour
moi!)

Avec le code suivant
Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Exit Sub
End If
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End Sub

Je voudrais qu'avant de cacher les lignes 23 24 elle vide la cellule L23

Donc je fais Range("L23").ClearContents

Mais ou dois-je insèrer cette ligne?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Troisième et dernière pour ce soir

Quelle commande ou fonction peut-on insérer à la fin d'une macro
pour que l'on reviennent sur la feuille et la cellule d'ou on est parti?

Merci et à bientôt (ou demain)

Rex ;-)))))

Elle fait réference à une autre feuille


Avatar
cousinhub
Oupsss,
en complément de la 1ère solution, à la place de sélectionner $E$8 dans
la formule de ton nom, que tu pourrais également supprimer, choisis
plutôt la formule : ÞCALER(Feuil1!$E$1;7;;2992)
En supposant que tu ne supprimes jamais la ligne 1....

Bonsoir,
joyeuses pâques également,

1/ à la place de prendre en référence des cellules, nommes une zone.
exemple : Insertion/Nom/Définir
nom : base (par exemple)
se réfère à : ÞCALER(Feuil1!$E$8;;;2992)
et ensuite, dans ta formule tu mets ;
=INDEX(base;$A$3)

2/ places ton instruction entre les lignes
End If
*****ici****

Rows("23:24").Hidden = True


3/ pour revenir sur ta feuille d'où tu as lancé ta macro, par exemple
Feuil1, tu mets en dernière ligne Sheets("Feuil1").Select

Bonne continuation

Bonsoir et Joyeuse Pâques


J'ai quelques petis soucis avec des macros et des fonctions

ATTENTION il y a TROIS questions !!!!!

Voici la première

Dans une feuille je fais appelle à la fonction
=INDEX(Offers!$E$3:$E$3000;$A$3)

Et elle fonctionne (c'est le cas de le dire) très bien

MAIS

Si, dans la feuille "Offers" je supprime les lignes 4 - 7
Tous mes index deviennent =INDEX(Offers!$E$8:$E$3005;$A$3)

Avec un 8 à la place du 3

Et pour tant je vais devoir régulièrement supprimer des lignes (et pas
toutes en séquences)

Y a-t-il moyen de faire en sorte que cette fonction reste toujours de 3 à
3000?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Voici la deuxième

J'ai créé un bouton "Toggle" (et j'en suis fière, c'est une innovation
pour
moi!)

Avec le code suivant
Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Exit Sub
End If
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End Sub


Je voudrais qu'avant de cacher les lignes 23 24 elle vide la cellule L23

Donc je fais Range("L23").ClearContents

Mais ou dois-je insèrer cette ligne?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Troisième et dernière pour ce soir

Quelle commande ou fonction peut-on insérer à la fin d'une macro
pour que l'on reviennent sur la feuille et la cellule d'ou on est parti?


Merci et à bientôt (ou demain)

Rex ;-)))))




Elle fait réference à une autre feuille







Avatar
Rex
Bonsoir et merci

T'es encore en route si tard, ou tu es d'une région lointaine ou il fait
encore jour?

But seriously

J'ai envisager de nommer mes listes mais il y en a une quarantaine à nommer

Alors j'espérait qu'il y avait une solution moins fastudieuse

Mais merci pour les autres

Elles sont déjà installés et testés

Bonne nuit et Joyeuse Pâques

Rex



"cousinhub" a écrit dans le message de news:

Oupsss,
en complément de la 1ère solution, à la place de sélectionner $E$8 dans
la formule de ton nom, que tu pourrais également supprimer, choisis
plutôt la formule : ÞCALER(Feuil1!$E$1;7;;2992)
En supposant que tu ne supprimes jamais la ligne 1....

Bonsoir,
joyeuses pâques également,

1/ à la place de prendre en référence des cellules, nommes une zone.
exemple : Insertion/Nom/Définir
nom : base (par exemple)
se réfère à : ÞCALER(Feuil1!$E$8;;;2992)
et ensuite, dans ta formule tu mets ;
=INDEX(base;$A$3)

2/ places ton instruction entre les lignes
End If
*****ici****

Rows("23:24").Hidden = True


3/ pour revenir sur ta feuille d'où tu as lancé ta macro, par exemple
Feuil1, tu mets en dernière ligne Sheets("Feuil1").Select

Bonne continuation

Bonsoir et Joyeuse Pâques


J'ai quelques petis soucis avec des macros et des fonctions

ATTENTION il y a TROIS questions !!!!!

Voici la première

Dans une feuille je fais appelle à la fonction
=INDEX(Offers!$E$3:$E$3000;$A$3)

Et elle fonctionne (c'est le cas de le dire) très bien

MAIS

Si, dans la feuille "Offers" je supprime les lignes 4 - 7
Tous mes index deviennent =INDEX(Offers!$E$8:$E$3005;$A$3)

Avec un 8 à la place du 3

Et pour tant je vais devoir régulièrement supprimer des lignes (et pas
toutes en séquences)

Y a-t-il moyen de faire en sorte que cette fonction reste toujours de 3
à



3000?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Voici la deuxième

J'ai créé un bouton "Toggle" (et j'en suis fière, c'est une innovation
pour
moi!)

Avec le code suivant
Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Exit Sub
End If
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End Sub


Je voudrais qu'avant de cacher les lignes 23 24 elle vide la cellule
L23




Donc je fais Range("L23").ClearContents

Mais ou dois-je insèrer cette ligne?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Troisième et dernière pour ce soir

Quelle commande ou fonction peut-on insérer à la fin d'une macro
pour que l'on reviennent sur la feuille et la cellule d'ou on est
parti?





Merci et à bientôt (ou demain)

Rex ;-)))))




Elle fait réference à une autre feuille









Avatar
LSteph
Bonjour,
1-
Utilise une plage nommée
2-
Private Sub ToggleButton1_Click()
With Rows("23:24")
If .Hidden Then
ToggleButton1.Caption = "Masquer colonnes"
Else
Range("L23").ClearContents
ToggleButton1.Caption = "Afficher colonnes"
End If
.Hidden = Not .Hidden
End With
End Sub

3-
C'est d'abord avant de partir qu'il faut noter :

Sub exemple()
Dim mysh As String, myr As String
mysh = ActiveSheet.Name
myr = Selection.Address
'...
'...tes instructions
'...
Sheets(mysh).Activate
Range(myr).Select
end sub

'Cdlt

'lSteph

Bonsoir et Joyeuse Pâques


J'ai quelques petis soucis avec des macros et des fonctions

ATTENTION il y a TROIS questions !!!!!

Voici la première

Dans une feuille je fais appelle à la fonction
=INDEX(Offers!$E$3:$E$3000;$A$3)

Et elle fonctionne (c'est le cas de le dire) très bien

MAIS

Si, dans la feuille "Offers" je supprime les lignes 4 - 7
Tous mes index deviennent =INDEX(Offers!$E$8:$E$3005;$A$3)

Avec un 8 à la place du 3

Et pour tant je vais devoir régulièrement supprimer des lignes (et pas
toutes en séquences)

Y a-t-il moyen de faire en sorte que cette fonction reste toujours de 3 à
3000?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Voici la deuxième

J'ai créé un bouton "Toggle" (et j'en suis fière, c'est une innovation pour
moi!)

Avec le code suivant
Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Exit Sub
End If
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End Sub


Je voudrais qu'avant de cacher les lignes 23 24 elle vide la cellule L23

Donc je fais Range("L23").ClearContents

Mais ou dois-je insèrer cette ligne?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Troisième et dernière pour ce soir

Quelle commande ou fonction peut-on insérer à la fin d'une macro
pour que l'on reviennent sur la feuille et la cellule d'ou on est parti?


Merci et à bientôt (ou demain)

Rex ;-)))))




Elle fait réference à une autre feuille





Avatar
Rex
Bonsoir

Ou plutôt bonne nuit

toi je sais que tu es dans la même "Time zone" que moi

Merci pour tes réponses

Le coup de l'activesheet name me semble super

Parce qu'il peut se copier sur toutes les macros ou il serait nécessaire
sans se casser la tête

Et j'aime :-))))

Par contre pour la première, t'as pas de solution apparament ;-((((((

A bientôt

Rex Et Joyeuse Pâques




"JB" a écrit dans le message de news:

Bonsoir,

Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Else
[L23].ClearContents
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End If
End Sub

Sub essai()
m_s = ActiveSheet.Name
m_c = ActiveCell.Address
....
....
Sheets(m_s).Select
Range(m_c).Select
End Sub

Cordialement JB

On 8 avr, 23:03, "Rex" wrote:
Bonsoir et Joyeuse Pâques

J'ai quelques petis soucis avec des macros et des fonctions

ATTENTION il y a TROIS questions !!!!!

Voici la première

Dans une feuille je fais appelle à la fonction
=INDEX(Offers!$E$3:$E$3000;$A$3)

Et elle fonctionne (c'est le cas de le dire) très bien

MAIS

Si, dans la feuille "Offers" je supprime les lignes 4 - 7
Tous mes index deviennent =INDEX(Offers!$E$8:$E$3005;$A$3)

Avec un 8 à la place du 3

Et pour tant je vais devoir régulièrement supprimer des lignes (et pas
toutes en séquences)

Y a-t-il moyen de faire en sorte que cette fonction reste toujours de 3 à
3000?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Voici la deuxième

J'ai créé un bouton "Toggle" (et j'en suis fière, c'est une innovation
pour

moi!)

Avec le code suivant
Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Exit Sub
End If
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End Sub

Je voudrais qu'avant de cacher les lignes 23 24 elle vide la cellule L23

Donc je fais Range("L23").ClearContents

Mais ou dois-je insèrer cette ligne?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Troisième et dernière pour ce soir

Quelle commande ou fonction peut-on insérer à la fin d'une macro
pour que l'on reviennent sur la feuille et la cellule d'ou on est parti?

Merci et à bientôt (ou demain)

Rex ;-)))))

Elle fait réference à une autre feuille


Avatar
cousinhub
Re-,
J'ai envisager de nommer mes listes mais il y en a une quarantaine à nommer



Au boulot.....:-)

je n'en connais pas d'autre, de solution :-

Bon courage

Bonsoir et merci

T'es encore en route si tard, ou tu es d'une région lointaine ou il fait
encore jour?

But seriously

J'ai envisager de nommer mes listes mais il y en a une quarantaine à nommer

Alors j'espérait qu'il y avait une solution moins fastudieuse

Mais merci pour les autres

Elles sont déjà installés et testés

Bonne nuit et Joyeuse Pâques

Rex



"cousinhub" a écrit dans le message de news:

Oupsss,
en complément de la 1ère solution, à la place de sélectionner $E$8 dans
la formule de ton nom, que tu pourrais également supprimer, choisis
plutôt la formule : ÞCALER(Feuil1!$E$1;7;;2992)
En supposant que tu ne supprimes jamais la ligne 1....

Bonsoir,
joyeuses pâques également,

1/ à la place de prendre en référence des cellules, nommes une zone.
exemple : Insertion/Nom/Définir
nom : base (par exemple)
se réfère à : ÞCALER(Feuil1!$E$8;;;2992)
et ensuite, dans ta formule tu mets ;
=INDEX(base;$A$3)

2/ places ton instruction entre les lignes
End If
*****ici****

Rows("23:24").Hidden = True


3/ pour revenir sur ta feuille d'où tu as lancé ta macro, par exemple
Feuil1, tu mets en dernière ligne Sheets("Feuil1").Select

Bonne continuation

Bonsoir et Joyeuse Pâques


J'ai quelques petis soucis avec des macros et des fonctions

ATTENTION il y a TROIS questions !!!!!

Voici la première

Dans une feuille je fais appelle à la fonction
=INDEX(Offers!$E$3:$E$3000;$A$3)

Et elle fonctionne (c'est le cas de le dire) très bien

MAIS

Si, dans la feuille "Offers" je supprime les lignes 4 - 7
Tous mes index deviennent =INDEX(Offers!$E$8:$E$3005;$A$3)

Avec un 8 à la place du 3

Et pour tant je vais devoir régulièrement supprimer des lignes (et pas
toutes en séquences)

Y a-t-il moyen de faire en sorte que cette fonction reste toujours de 3
à



3000?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Voici la deuxième

J'ai créé un bouton "Toggle" (et j'en suis fière, c'est une innovation
pour
moi!)

Avec le code suivant
Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Exit Sub
End If
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End Sub


Je voudrais qu'avant de cacher les lignes 23 24 elle vide la cellule
L23



Donc je fais Range("L23").ClearContents

Mais ou dois-je insèrer cette ligne?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Troisième et dernière pour ce soir

Quelle commande ou fonction peut-on insérer à la fin d'une macro
pour que l'on reviennent sur la feuille et la cellule d'ou on est
parti?




Merci et à bientôt (ou demain)

Rex ;-)))))




Elle fait réference à une autre feuille













Avatar
Rex
Re Bonsoir

J'ai crié victoire trop tôt

Le toogle ne supprime pas le contenu de la celule

J'aiesayé vos deux solutions et (à moins que je déconne, ce qui est
possible)
cela ne fonctionne pas

Si l'un de vous a une autre suggestion

Ce que je veux c'est qu'avant de cacher les lignes il me remette la cellule
L23 à zero

Bizarre


Tiens j'ai dis BIZARRE Comme c'est étrange

Rex :-((




"cousinhub" a écrit dans le message de news:
#
Bonsoir,
joyeuses pâques également,

1/ à la place de prendre en référence des cellules, nommes une zone.
exemple : Insertion/Nom/Définir
nom : base (par exemple)
se réfère à : ÞCALER(Feuil1!$E$8;;;2992)
et ensuite, dans ta formule tu mets ;
=INDEX(base;$A$3)

2/ places ton instruction entre les lignes
End If
*****ici****

Rows("23:24").Hidden = True


3/ pour revenir sur ta feuille d'où tu as lancé ta macro, par exemple
Feuil1, tu mets en dernière ligne Sheets("Feuil1").Select

Bonne continuation

Bonsoir et Joyeuse Pâques


J'ai quelques petis soucis avec des macros et des fonctions

ATTENTION il y a TROIS questions !!!!!

Voici la première

Dans une feuille je fais appelle à la fonction
=INDEX(Offers!$E$3:$E$3000;$A$3)

Et elle fonctionne (c'est le cas de le dire) très bien

MAIS

Si, dans la feuille "Offers" je supprime les lignes 4 - 7
Tous mes index deviennent =INDEX(Offers!$E$8:$E$3005;$A$3)

Avec un 8 à la place du 3

Et pour tant je vais devoir régulièrement supprimer des lignes (et pas
toutes en séquences)

Y a-t-il moyen de faire en sorte que cette fonction reste toujours de 3
à


3000?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Voici la deuxième

J'ai créé un bouton "Toggle" (et j'en suis fière, c'est une innovation
pour


moi!)

Avec le code suivant
Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Exit Sub
End If
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End Sub


Je voudrais qu'avant de cacher les lignes 23 24 elle vide la cellule L23

Donc je fais Range("L23").ClearContents

Mais ou dois-je insèrer cette ligne?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Troisième et dernière pour ce soir

Quelle commande ou fonction peut-on insérer à la fin d'une macro
pour que l'on reviennent sur la feuille et la cellule d'ou on est parti?


Merci et à bientôt (ou demain)

Rex ;-)))))




Elle fait réference à une autre feuille







Avatar
Rex
Re Bonsoir

J'ai crié victoire trop tôt

Le toogle ne supprime pas le contenu de la celule

J'aiesayé vos deux solutions et (à moins que je déconne, ce qui est
possible)
cela ne fonctionne pas

Si l'un de vous a une autre suggestion

Ce que je veux c'est qu'avant de cacher les lignes il me remette la cellule
L23 à zero

Bizarre


Tiens j'ai dis BIZARRE Comme c'est étrange

Rex :-((

"JB" a écrit dans le message de news:

Bonsoir,

Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Else
[L23].ClearContents
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End If
End Sub

Sub essai()
m_s = ActiveSheet.Name
m_c = ActiveCell.Address
....
....
Sheets(m_s).Select
Range(m_c).Select
End Sub

Cordialement JB

On 8 avr, 23:03, "Rex" wrote:
Bonsoir et Joyeuse Pâques

J'ai quelques petis soucis avec des macros et des fonctions

ATTENTION il y a TROIS questions !!!!!

Voici la première

Dans une feuille je fais appelle à la fonction
=INDEX(Offers!$E$3:$E$3000;$A$3)

Et elle fonctionne (c'est le cas de le dire) très bien

MAIS

Si, dans la feuille "Offers" je supprime les lignes 4 - 7
Tous mes index deviennent =INDEX(Offers!$E$8:$E$3005;$A$3)

Avec un 8 à la place du 3

Et pour tant je vais devoir régulièrement supprimer des lignes (et pas
toutes en séquences)

Y a-t-il moyen de faire en sorte que cette fonction reste toujours de 3 à
3000?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Voici la deuxième

J'ai créé un bouton "Toggle" (et j'en suis fière, c'est une innovation
pour

moi!)

Avec le code suivant
Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Exit Sub
End If
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End Sub

Je voudrais qu'avant de cacher les lignes 23 24 elle vide la cellule L23

Donc je fais Range("L23").ClearContents

Mais ou dois-je insèrer cette ligne?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Troisième et dernière pour ce soir

Quelle commande ou fonction peut-on insérer à la fin d'une macro
pour que l'on reviennent sur la feuille et la cellule d'ou on est parti?

Merci et à bientôt (ou demain)

Rex ;-)))))

Elle fait réference à une autre feuille


Avatar
Rex
Bonsoir et merci

T'as vu ma deuxième réponse?

Rex


"cousinhub" a écrit dans le message de news:

Re-,
J'ai envisager de nommer mes listes mais il y en a une quarantaine à
nommer




Au boulot.....:-)

je n'en connais pas d'autre, de solution :-

Bon courage

Bonsoir et merci

T'es encore en route si tard, ou tu es d'une région lointaine ou il fait
encore jour?

But seriously

J'ai envisager de nommer mes listes mais il y en a une quarantaine à
nommer



Alors j'espérait qu'il y avait une solution moins fastudieuse

Mais merci pour les autres

Elles sont déjà installés et testés

Bonne nuit et Joyeuse Pâques

Rex



"cousinhub" a écrit dans le message de news:

Oupsss,
en complément de la 1ère solution, à la place de sélectionner $E$8 dans
la formule de ton nom, que tu pourrais également supprimer, choisis
plutôt la formule : ÞCALER(Feuil1!$E$1;7;;2992)
En supposant que tu ne supprimes jamais la ligne 1....

Bonsoir,
joyeuses pâques également,

1/ à la place de prendre en référence des cellules, nommes une zone.
exemple : Insertion/Nom/Définir
nom : base (par exemple)
se réfère à : ÞCALER(Feuil1!$E$8;;;2992)
et ensuite, dans ta formule tu mets ;
=INDEX(base;$A$3)

2/ places ton instruction entre les lignes
End If
*****ici****

Rows("23:24").Hidden = True


3/ pour revenir sur ta feuille d'où tu as lancé ta macro, par exemple
Feuil1, tu mets en dernière ligne Sheets("Feuil1").Select

Bonne continuation

Bonsoir et Joyeuse Pâques


J'ai quelques petis soucis avec des macros et des fonctions

ATTENTION il y a TROIS questions !!!!!

Voici la première

Dans une feuille je fais appelle à la fonction
=INDEX(Offers!$E$3:$E$3000;$A$3)

Et elle fonctionne (c'est le cas de le dire) très bien

MAIS

Si, dans la feuille "Offers" je supprime les lignes 4 - 7
Tous mes index deviennent =INDEX(Offers!$E$8:$E$3005;$A$3)

Avec un 8 à la place du 3

Et pour tant je vais devoir régulièrement supprimer des lignes (et
pas





toutes en séquences)

Y a-t-il moyen de faire en sorte que cette fonction reste toujours de
3





à
3000?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Voici la deuxième

J'ai créé un bouton "Toggle" (et j'en suis fière, c'est une
innovation





pour
moi!)

Avec le code suivant
Private Sub ToggleButton1_Click()
If Rows("23:24").Hidden = True Then
Rows("23:24").Hidden = False
ToggleButton1.Caption = "Masquer colonnes"
Exit Sub
End If
Rows("23:24").Hidden = True
ToggleButton1.Caption = "Afficher colonnes"
End Sub


Je voudrais qu'avant de cacher les lignes 23 24 elle vide la cellule
L23



Donc je fais Range("L23").ClearContents

Mais ou dois-je insèrer cette ligne?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Troisième et dernière pour ce soir

Quelle commande ou fonction peut-on insérer à la fin d'une macro
pour que l'on reviennent sur la feuille et la cellule d'ou on est
parti?




Merci et à bientôt (ou demain)

Rex ;-)))))




Elle fait réference à une autre feuille















1 2 3