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

Classement idéal existe-il

8 réponses
Avatar
milloche
Bonjour
Dans un souci de classement idéal de mes macros "de module", serait-il
possible de ranger celles qui ne fonctionnent qu'avec une seule feuille,
dans cette feuille. Je sais que ces macros sont normalement des évènements,
mais, comme je vous connais !! peut-être y a t'il une ruse possible.
Et je conserverais les modules seulement pour les macros "universelles" qui
fonctionnent dans toutes les feuilles.
Encore une idée à la milloche mais qui sait...

8 réponses

Avatar
MichDenis
Bonjour Milloche,

Une macro peut être placé où tu le désires. Si elle n'affecte qu'une feuille
particulière, il vaut mieux la mettre dans le code module de cette feuille.
Si tu as besoin de copier cette feuille, le code sera complet.

Mais une macro événementielle peut aussi très bien appeler une macro
dans un module standard. Voici un exemple :
'------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call MaMacro(Target)
End Sub
'------------------------------------
Sub MaMacro(Rg As Range)
MsgBox Rg.Address
End Sub
'------------------------------------

L'important, c'est de créer une macro ou fonction qui soient le plus
génériques possibles et qui peuvent servir le plus souvent possible sans
devoir être obligé de la réécrire constamment ! C'est surtout une
économie de temps et de sous.



"milloche" a écrit dans le message de groupe de discussion :
Oh63#
Bonjour
Dans un souci de classement idéal de mes macros "de module", serait-il
possible de ranger celles qui ne fonctionnent qu'avec une seule feuille,
dans cette feuille. Je sais que ces macros sont normalement des évènements,
mais, comme je vous connais !! peut-être y a t'il une ruse possible.
Et je conserverais les modules seulement pour les macros "universelles" qui
fonctionnent dans toutes les feuilles.
Encore une idée à la milloche mais qui sait...
Avatar
milloche
Réponse nette et précise. Donc mon idée possible.
Je va tester tout ça.
Merci Denis.
JMM

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

Bonjour Milloche,

Une macro peut être placé où tu le désires. Si elle n'affecte qu'une
feuille
particulière, il vaut mieux la mettre dans le code module de cette
feuille.
Si tu as besoin de copier cette feuille, le code sera complet.

Mais une macro événementielle peut aussi très bien appeler une macro
dans un module standard. Voici un exemple :
'------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call MaMacro(Target)
End Sub
'------------------------------------
Sub MaMacro(Rg As Range)
MsgBox Rg.Address
End Sub
'------------------------------------

L'important, c'est de créer une macro ou fonction qui soient le plus
génériques possibles et qui peuvent servir le plus souvent possible sans
devoir être obligé de la réécrire constamment ! C'est surtout une
économie de temps et de sous.



"milloche" a écrit dans le message de
groupe de discussion :
Oh63#
Bonjour
Dans un souci de classement idéal de mes macros "de module", serait-il
possible de ranger celles qui ne fonctionnent qu'avec une seule feuille,
dans cette feuille. Je sais que ces macros sont normalement des
évènements,
mais, comme je vous connais !! peut-être y a t'il une ruse possible.
Et je conserverais les modules seulement pour les macros "universelles"
qui
fonctionnent dans toutes les feuilles.
Encore une idée à la milloche mais qui sait...



Avatar
milloche
Peut-être pas si simple finalement.
Je viens de déplacer par couper/coller une macro d'un module vers sa
feuille.
Je comprend bien que le bouton qui commandait la macro n'est pas au courant
que sa "feuille de route" vient de déménager. La box d'affectation des
macros me montre qu'elle pointe toujours vers l'ancien emplacement de la
macro.
Excel me fait savoir "impossible de trouver la macro".
Il y a donc une procédure à respecter. Quelle est-elle ? car j'ai un sacré
paquet de macros à déménager !
Est-ce le couper/coller qui est en cause ou dois reconfigurer tous les
boutons au clavier ?
Ou une astuce pour dire aux boutons d'aller chercher leur "ordre de
mission" ailleurs.
<]:o))

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

Réponse nette et précise. Donc mon idée possible.
Je va tester tout ça.
Merci Denis.
JMM

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

Bonjour Milloche,

Une macro peut être placé où tu le désires. Si elle n'affecte qu'une
feuille
particulière, il vaut mieux la mettre dans le code module de cette
feuille.
Si tu as besoin de copier cette feuille, le code sera complet.

Mais une macro événementielle peut aussi très bien appeler une macro
dans un module standard. Voici un exemple :
'------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call MaMacro(Target)
End Sub
'------------------------------------
Sub MaMacro(Rg As Range)
MsgBox Rg.Address
End Sub
'------------------------------------

L'important, c'est de créer une macro ou fonction qui soient le plus
génériques possibles et qui peuvent servir le plus souvent possible sans
devoir être obligé de la réécrire constamment ! C'est surtout une
économie de temps et de sous.



"milloche" a écrit dans le message de
groupe de discussion :
Oh63#
Bonjour
Dans un souci de classement idéal de mes macros "de module", serait-il
possible de ranger celles qui ne fonctionnent qu'avec une seule feuille,
dans cette feuille. Je sais que ces macros sont normalement des
évènements,
mais, comme je vous connais !! peut-être y a t'il une ruse possible.
Et je conserverais les modules seulement pour les macros "universelles"
qui
fonctionnent dans toutes les feuilles.
Encore une idée à la milloche mais qui sait...







Avatar
milloche
Précision.
La macro que je viens de déménager d'un module vers la feuille voulue
n'apparaît pas dans la boite de dialogue"affecter une macro".


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

Réponse nette et précise. Donc mon idée possible.
Je va tester tout ça.
Merci Denis.
JMM

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

Bonjour Milloche,

Une macro peut être placé où tu le désires. Si elle n'affecte qu'une
feuille
particulière, il vaut mieux la mettre dans le code module de cette
feuille.
Si tu as besoin de copier cette feuille, le code sera complet.

Mais une macro événementielle peut aussi très bien appeler une macro
dans un module standard. Voici un exemple :
'------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call MaMacro(Target)
End Sub
'------------------------------------
Sub MaMacro(Rg As Range)
MsgBox Rg.Address
End Sub
'------------------------------------

L'important, c'est de créer une macro ou fonction qui soient le plus
génériques possibles et qui peuvent servir le plus souvent possible sans
devoir être obligé de la réécrire constamment ! C'est surtout une
économie de temps et de sous.



"milloche" a écrit dans le message de
groupe de discussion :
Oh63#
Bonjour
Dans un souci de classement idéal de mes macros "de module", serait-il
possible de ranger celles qui ne fonctionnent qu'avec une seule feuille,
dans cette feuille. Je sais que ces macros sont normalement des
évènements,
mais, comme je vous connais !! peut-être y a t'il une ruse possible.
Et je conserverais les modules seulement pour les macros "universelles"
qui
fonctionnent dans toutes les feuilles.
Encore une idée à la milloche mais qui sait...







Avatar
MichDenis
Si tu déplaces ta macro d'un module feuille vers un module standard
il est évident que si cette macro est affectée à un bouton, tu devras
refaire l'affectation. Le déplacement en sens inverse est aussi vrai.

Ceci ne faisait pas partie de ta question initiale !



"milloche" a écrit dans le message de groupe de discussion :
uz$
Précision.
La macro que je viens de déménager d'un module vers la feuille voulue
n'apparaît pas dans la boite de dialogue"affecter une macro".


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

Réponse nette et précise. Donc mon idée possible.
Je va tester tout ça.
Merci Denis.
JMM

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

Bonjour Milloche,

Une macro peut être placé où tu le désires. Si elle n'affecte qu'une
feuille
particulière, il vaut mieux la mettre dans le code module de cette
feuille.
Si tu as besoin de copier cette feuille, le code sera complet.

Mais une macro événementielle peut aussi très bien appeler une macro
dans un module standard. Voici un exemple :
'------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call MaMacro(Target)
End Sub
'------------------------------------
Sub MaMacro(Rg As Range)
MsgBox Rg.Address
End Sub
'------------------------------------

L'important, c'est de créer une macro ou fonction qui soient le plus
génériques possibles et qui peuvent servir le plus souvent possible sans
devoir être obligé de la réécrire constamment ! C'est surtout une
économie de temps et de sous.



"milloche" a écrit dans le message de
groupe de discussion :
Oh63#
Bonjour
Dans un souci de classement idéal de mes macros "de module", serait-il
possible de ranger celles qui ne fonctionnent qu'avec une seule feuille,
dans cette feuille. Je sais que ces macros sont normalement des
évènements,
mais, comme je vous connais !! peut-être y a t'il une ruse possible.
Et je conserverais les modules seulement pour les macros "universelles"
qui
fonctionnent dans toutes les feuilles.
Encore une idée à la milloche mais qui sait...







Avatar
milloche
Oui, OK
Mais les macros de feuille n'apparaissent pas dans la boite "affecter une
macro" qu'on obtient avec un clic droit sur un objet dessin (bouton).
Faut-il entrer leur emplacement au clavier ou existe t'il une autre ruse
???

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

Si tu déplaces ta macro d'un module feuille vers un module standard
il est évident que si cette macro est affectée à un bouton, tu devras
refaire l'affectation. Le déplacement en sens inverse est aussi vrai.

Ceci ne faisait pas partie de ta question initiale !



"milloche" a écrit dans le message de
groupe de discussion :
uz$
Précision.
La macro que je viens de déménager d'un module vers la feuille voulue
n'apparaît pas dans la boite de dialogue"affecter une macro".


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

Réponse nette et précise. Donc mon idée possible.
Je va tester tout ça.
Merci Denis.
JMM

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

Bonjour Milloche,

Une macro peut être placé où tu le désires. Si elle n'affecte qu'une
feuille
particulière, il vaut mieux la mettre dans le code module de cette
feuille.
Si tu as besoin de copier cette feuille, le code sera complet.

Mais une macro événementielle peut aussi très bien appeler une macro
dans un module standard. Voici un exemple :
'------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call MaMacro(Target)
End Sub
'------------------------------------
Sub MaMacro(Rg As Range)
MsgBox Rg.Address
End Sub
'------------------------------------

L'important, c'est de créer une macro ou fonction qui soient le plus
génériques possibles et qui peuvent servir le plus souvent possible
sans
devoir être obligé de la réécrire constamment ! C'est surtout une
économie de temps et de sous.



"milloche" a écrit dans le message de
groupe de discussion :
Oh63#
Bonjour
Dans un souci de classement idéal de mes macros "de module", serait-il
possible de ranger celles qui ne fonctionnent qu'avec une seule
feuille,
dans cette feuille. Je sais que ces macros sont normalement des
évènements,
mais, comme je vous connais !! peut-être y a t'il une ruse possible.
Et je conserverais les modules seulement pour les macros "universelles"
qui
fonctionnent dans toutes les feuilles.
Encore une idée à la milloche mais qui sait...










Avatar
milloche
ARRETE TOUT
J'ai compris le truc
Merci encore, je suis un peu dure à la comprenette !
<]:o))

"milloche" a écrit dans le message de news:
%
Oui, OK
Mais les macros de feuille n'apparaissent pas dans la boite "affecter une
macro" qu'on obtient avec un clic droit sur un objet dessin (bouton).
Faut-il entrer leur emplacement au clavier ou existe t'il une autre ruse
???

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

Si tu déplaces ta macro d'un module feuille vers un module standard
il est évident que si cette macro est affectée à un bouton, tu devras
refaire l'affectation. Le déplacement en sens inverse est aussi vrai.

Ceci ne faisait pas partie de ta question initiale !



"milloche" a écrit dans le message de
groupe de discussion :
uz$
Précision.
La macro que je viens de déménager d'un module vers la feuille voulue
n'apparaît pas dans la boite de dialogue"affecter une macro".


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

Réponse nette et précise. Donc mon idée possible.
Je va tester tout ça.
Merci Denis.
JMM

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

Bonjour Milloche,

Une macro peut être placé où tu le désires. Si elle n'affecte qu'une
feuille
particulière, il vaut mieux la mettre dans le code module de cette
feuille.
Si tu as besoin de copier cette feuille, le code sera complet.

Mais une macro événementielle peut aussi très bien appeler une macro
dans un module standard. Voici un exemple :
'------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call MaMacro(Target)
End Sub
'------------------------------------
Sub MaMacro(Rg As Range)
MsgBox Rg.Address
End Sub
'------------------------------------

L'important, c'est de créer une macro ou fonction qui soient le plus
génériques possibles et qui peuvent servir le plus souvent possible
sans
devoir être obligé de la réécrire constamment ! C'est surtout une
économie de temps et de sous.



"milloche" a écrit dans le message de
groupe de discussion :
Oh63#
Bonjour
Dans un souci de classement idéal de mes macros "de module", serait-il
possible de ranger celles qui ne fonctionnent qu'avec une seule
feuille,
dans cette feuille. Je sais que ces macros sont normalement des
évènements,
mais, comme je vous connais !! peut-être y a t'il une ruse possible.
Et je conserverais les modules seulement pour les macros
"universelles"
qui
fonctionnent dans toutes les feuilles.
Encore une idée à la milloche mais qui sait...














Avatar
MichDenis
Si ta ligne de déclaration de ta macro débute par le mot "Private"
supprime "Private"
Au delà de ça, la macro de la feuille devrait apparaître dans la liste.
Elle est précédée de la feuille dans laquelle elle est située.

N.B- Dans la fenêtre générée par le raccourci Alt-F8 , assure toi dans
la liste déroulante du bas de celle-ci de sélectionner le classeur où se
retrouve tes macros.


"milloche" a écrit dans le message de groupe de discussion :
#
Oui, OK
Mais les macros de feuille n'apparaissent pas dans la boite "affecter une
macro" qu'on obtient avec un clic droit sur un objet dessin (bouton).
Faut-il entrer leur emplacement au clavier ou existe t'il une autre ruse
???

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

Si tu déplaces ta macro d'un module feuille vers un module standard
il est évident que si cette macro est affectée à un bouton, tu devras
refaire l'affectation. Le déplacement en sens inverse est aussi vrai.

Ceci ne faisait pas partie de ta question initiale !



"milloche" a écrit dans le message de
groupe de discussion :
uz$
Précision.
La macro que je viens de déménager d'un module vers la feuille voulue
n'apparaît pas dans la boite de dialogue"affecter une macro".


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

Réponse nette et précise. Donc mon idée possible.
Je va tester tout ça.
Merci Denis.
JMM

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

Bonjour Milloche,

Une macro peut être placé où tu le désires. Si elle n'affecte qu'une
feuille
particulière, il vaut mieux la mettre dans le code module de cette
feuille.
Si tu as besoin de copier cette feuille, le code sera complet.

Mais une macro événementielle peut aussi très bien appeler une macro
dans un module standard. Voici un exemple :
'------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call MaMacro(Target)
End Sub
'------------------------------------
Sub MaMacro(Rg As Range)
MsgBox Rg.Address
End Sub
'------------------------------------

L'important, c'est de créer une macro ou fonction qui soient le plus
génériques possibles et qui peuvent servir le plus souvent possible
sans
devoir être obligé de la réécrire constamment ! C'est surtout une
économie de temps et de sous.



"milloche" a écrit dans le message de
groupe de discussion :
Oh63#
Bonjour
Dans un souci de classement idéal de mes macros "de module", serait-il
possible de ranger celles qui ne fonctionnent qu'avec une seule
feuille,
dans cette feuille. Je sais que ces macros sont normalement des
évènements,
mais, comme je vous connais !! peut-être y a t'il une ruse possible.
Et je conserverais les modules seulement pour les macros "universelles"
qui
fonctionnent dans toutes les feuilles.
Encore une idée à la milloche mais qui sait...