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

Noms définition sur plusieurs feuille

6 réponses
Avatar
rthompson
Bonjour à toutes tous

Petite question avir de partant

(je ne répondrais que ce soir)

Ma question est celle-ci

Faut-il renommer les noms pour chaque feuille insérée?
Que se passe-t-il si on laisse Excel faire?
Comme j'utilise des macro dans le genre de celle tout en dessous, faut-il
changer autre chose que le nom de feuille?
Pour le moment tout à l'air de fonctionner sans changer les noms, mais j'ai
des doutes


J'esssssplikkke


Dans un document Excel j'ai une feuille nommée Documents_Solution

Dans cette feuille j'ai des plages nommées (entre-autres)

Docsolution_due_date
=OFFSET(Document_Solution!$F$6;1;;COUNTA(Document_Solution!$B:$B)-2;)

Il y en plusieurs du même style

Quand cette feuille est prête je fais une copie de la feuille
et je renomme cette copie Fred

Ma liste de nom n'a pas changée
Donc j'ai toujours le nom

Docsolution_due_date

Mais, sa définition de nom pour cette feuille j'ai

=OFFSET(Fred!$F$6;1;;COUNTA(Fred!$B:$B)-2;)


D'avance un grand merci et à ce soir

Rex

Voici la macro

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub A_Payer()
Application.ScreenUpdating = False
Sheets("Document_Solution").Select
Range("Docsolution_A_Payer").EntireRow.Hidden = False
For Each c In Range("Docsolution_A_Payer")
If c = 0 Then c.EntireRow.Hidden = True
Next

Sheets("Fred").Select
Range("Docsolution_A_Payer").EntireRow.Hidden = False
For Each c In Range("Docsolution_A_Payer")
If c = 0 Then c.EntireRow.Hidden = True
Next

Sheets("Summary").Select
Application.ScreenUpdating = True

End Sub

6 réponses

Avatar
Jacky
Bonjour,

Tu peux nommer ta plage sans spécifier la feuille, elle sera valable dans
tout le classeur pour la feuille active du moment sans rien a modifier.

exemple
Docsolution_due_date

=OFFSET(Document_Solution!$F$6;1;;COUNTA(Document_Solution!$B:$B)-2;)


devient
Docsolution_due_date
=OFFSET(!$F$6;1;;COUNTA(!$B:$B)-2;)
OU
=OFFSET(!$F$6;;;COUNTA(!$B:$B)-2)

Et évidemment tu lances la macro a partir de la feuille active
'-----------------
Sub A_Payer()
Application.ScreenUpdating = False
Range("Docsolution_invoice_date").EntireRow.Hidden = False
For Each c In Range("Docsolution_invoice_date")
If c = 0 Then c.EntireRow.Hidden = True
Next
Sheets("Summary").Select
Application.ScreenUpdating = True
End Sub
'---------------------

--
Salutations
JJ


"rthompson" a écrit dans le message de
news:
Bonjour à toutes tous

Petite question avir de partant

(je ne répondrais que ce soir)

Ma question est celle-ci

Faut-il renommer les noms pour chaque feuille insérée?
Que se passe-t-il si on laisse Excel faire?
Comme j'utilise des macro dans le genre de celle tout en dessous, faut-il
changer autre chose que le nom de feuille?
Pour le moment tout à l'air de fonctionner sans changer les noms, mais
j'ai des doutes


J'esssssplikkke


Dans un document Excel j'ai une feuille nommée Documents_Solution

Dans cette feuille j'ai des plages nommées (entre-autres)

Docsolution_due_date

=OFFSET(Document_Solution!$F$6;1;;COUNTA(Document_Solution!$B:$B)-2;)

Il y en plusieurs du même style

Quand cette feuille est prête je fais une copie de la feuille
et je renomme cette copie Fred

Ma liste de nom n'a pas changée
Donc j'ai toujours le nom

Docsolution_due_date

Mais, sa définition de nom pour cette feuille j'ai

=OFFSET(Fred!$F$6;1;;COUNTA(Fred!$B:$B)-2;)


D'avance un grand merci et à ce soir

Rex

Voici la macro

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub A_Payer()
Application.ScreenUpdating = False
Sheets("Document_Solution").Select
Range("Docsolution_A_Payer").EntireRow.Hidden = False
For Each c In Range("Docsolution_A_Payer")
If c = 0 Then c.EntireRow.Hidden = True
Next

Sheets("Fred").Select
Range("Docsolution_A_Payer").EntireRow.Hidden = False
For Each c In Range("Docsolution_A_Payer")
If c = 0 Then c.EntireRow.Hidden = True
Next

Sheets("Summary").Select
Application.ScreenUpdating = True

End Sub






Avatar
rthompson
Bonjour et merci

Oui c'est une piste

Mais comme je dois lancer les macros d'une feuille "Summary" et que ceci
doit adapter toutes les feuilles du fichier
ce qui se passe pour le moment semble fonctionner

Mais je suis surpris et un peu inquiet

Enfin on verra si un "Génie" passe par ici pour m'expliquer comment cela
fonctionne

Merci à toi et à bientôt

Rex


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

Bonjour,

Tu peux nommer ta plage sans spécifier la feuille, elle sera valable dans
tout le classeur pour la feuille active du moment sans rien a modifier.

exemple
Docsolution_due_date

=OFFSET(Document_Solution!$F$6;1;;COUNTA(Document_Solution!$B:$B)-2;)


devient
Docsolution_due_date
=OFFSET(!$F$6;1;;COUNTA(!$B:$B)-2;)
OU
=OFFSET(!$F$6;;;COUNTA(!$B:$B)-2)

Et évidemment tu lances la macro a partir de la feuille active
'-----------------
Sub A_Payer()
Application.ScreenUpdating = False
Range("Docsolution_invoice_date").EntireRow.Hidden = False
For Each c In Range("Docsolution_invoice_date")
If c = 0 Then c.EntireRow.Hidden = True
Next
Sheets("Summary").Select
Application.ScreenUpdating = True
End Sub
'---------------------

--
Salutations
JJ


"rthompson" a écrit dans le message de
news:
Bonjour à toutes tous

Petite question avir de partant

(je ne répondrais que ce soir)

Ma question est celle-ci

Faut-il renommer les noms pour chaque feuille insérée?
Que se passe-t-il si on laisse Excel faire?
Comme j'utilise des macro dans le genre de celle tout en dessous, faut-il
changer autre chose que le nom de feuille?
Pour le moment tout à l'air de fonctionner sans changer les noms, mais
j'ai des doutes


J'esssssplikkke


Dans un document Excel j'ai une feuille nommée Documents_Solution

Dans cette feuille j'ai des plages nommées (entre-autres)

Docsolution_due_date

=OFFSET(Document_Solution!$F$6;1;;COUNTA(Document_Solution!$B:$B)-2;)

Il y en plusieurs du même style

Quand cette feuille est prête je fais une copie de la feuille
et je renomme cette copie Fred

Ma liste de nom n'a pas changée
Donc j'ai toujours le nom

Docsolution_due_date

Mais, sa définition de nom pour cette feuille j'ai

=OFFSET(Fred!$F$6;1;;COUNTA(Fred!$B:$B)-2;)


D'avance un grand merci et à ce soir

Rex

Voici la macro

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub A_Payer()
Application.ScreenUpdating = False
Sheets("Document_Solution").Select
Range("Docsolution_A_Payer").EntireRow.Hidden = False
For Each c In Range("Docsolution_A_Payer")
If c = 0 Then c.EntireRow.Hidden = True
Next

Sheets("Fred").Select
Range("Docsolution_A_Payer").EntireRow.Hidden = False
For Each c In Range("Docsolution_A_Payer")
If c = 0 Then c.EntireRow.Hidden = True
Next

Sheets("Summary").Select
Application.ScreenUpdating = True

End Sub










Avatar
rthompson
Bonsoir

Et merci pour ce petit cours

Je commence à comprendre certaines petites astuces

Merci et à bientôt

Rex


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

Bonjour RThompson,

Quand tu crées une copie d'une feuille dans le même classeur,
si les plages nommées (leur nom") ont été faites (déclarées) au niveau
du classeur, comme il ne peut y avoir 2 noms au niveau du classeur
qui porte le même nom, les noms (Names) de la copie de la feuille
auront été transformées par Excel en noms (names) locaux de la feuille.

Exemple :

Sur la feuille originale ce nom au hasard :
Nom : Thompson 'Nom au niveau du classeur
fait référence à : .....

Sur la copie de la feuille, le même nom deviendra :
NomDeLaFeuill!Thompson 'Nom au niveau de la feuille.
Fait référence à : .....

Si tu désires que tous tes noms "Names" de ton classeur soient similaires,
dans la mesure du possible, tu crées dans tes feuilles originales, de noms
définis au niveau de la feuille.

P.S - Pour faire référence dans une formule d'une cellule d'une feuille à
une plage nommée d'une autre feuille, un nom créée au niveau du
classeur n'a pas besoin que l'on fasse référence à la feuille.
= Thompson , c'est suffisant.
Si le nom fut déclaré au niveau de la feuille, pour l'insérer
dans une
formule sur une autre feuille, il faut mentionner le nom de sa
feuille
+ son appellation : = NomDeLaFeuille!Thompson






"rthompson" a écrit dans le message de
groupe de discussion :
Bonjour à toutes tous

Petite question avir de partant

(je ne répondrais que ce soir)

Ma question est celle-ci

Faut-il renommer les noms pour chaque feuille insérée?
Que se passe-t-il si on laisse Excel faire?
Comme j'utilise des macro dans le genre de celle tout en dessous, faut-il
changer autre chose que le nom de feuille?
Pour le moment tout à l'air de fonctionner sans changer les noms, mais
j'ai
des doutes


J'esssssplikkke


Dans un document Excel j'ai une feuille nommée Documents_Solution

Dans cette feuille j'ai des plages nommées (entre-autres)

Docsolution_due_date

=OFFSET(Document_Solution!$F$6;1;;COUNTA(Document_Solution!$B:$B)-2;)

Il y en plusieurs du même style

Quand cette feuille est prête je fais une copie de la feuille
et je renomme cette copie Fred

Ma liste de nom n'a pas changée
Donc j'ai toujours le nom

Docsolution_due_date

Mais, sa définition de nom pour cette feuille j'ai

=OFFSET(Fred!$F$6;1;;COUNTA(Fred!$B:$B)-2;)


D'avance un grand merci et à ce soir

Rex

Voici la macro

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub A_Payer()
Application.ScreenUpdating = False
Sheets("Document_Solution").Select
Range("Docsolution_A_Payer").EntireRow.Hidden = False
For Each c In Range("Docsolution_A_Payer")
If c = 0 Then c.EntireRow.Hidden = True
Next

Sheets("Fred").Select
Range("Docsolution_A_Payer").EntireRow.Hidden = False
For Each c In Range("Docsolution_A_Payer")
If c = 0 Then c.EntireRow.Hidden = True
Next

Sheets("Summary").Select
Application.ScreenUpdating = True

End Sub


Avatar
L.MAITRE
Bonjour,


le sujet m'intéresse car j'ai de gros soucis avec les plages nommées depuis
le passage à 2007

j'ai déja posté à ce sujet mais n'ai pas eu la réponse à ma question

le "gestionnaire de noms" permet de les modifier

quel sont les conditions pour que la "ZONE" ou ("ETENDUE") d'un nom soit
modifiable ou non ?


Merci d'avance

Louis




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

Bonjour RThompson,

Quand tu crées une copie d'une feuille dans le même classeur,
si les plages nommées (leur nom") ont été faites (déclarées) au niveau
du classeur, comme il ne peut y avoir 2 noms au niveau du classeur
qui porte le même nom, les noms (Names) de la copie de la feuille
auront été transformées par Excel en noms (names) locaux de la feuille.

Exemple :

Sur la feuille originale ce nom au hasard :
Nom : Thompson 'Nom au niveau du classeur
fait référence à : .....

Sur la copie de la feuille, le même nom deviendra :
NomDeLaFeuill!Thompson 'Nom au niveau de la feuille.
Fait référence à : .....

Si tu désires que tous tes noms "Names" de ton classeur soient similaires,
dans la mesure du possible, tu crées dans tes feuilles originales, de noms
définis au niveau de la feuille.

P.S - Pour faire référence dans une formule d'une cellule d'une feuille à
une plage nommée d'une autre feuille, un nom créée au niveau du
classeur n'a pas besoin que l'on fasse référence à la feuille.
= Thompson , c'est suffisant.
Si le nom fut déclaré au niveau de la feuille, pour l'insérer
dans une
formule sur une autre feuille, il faut mentionner le nom de sa
feuille
+ son appellation : = NomDeLaFeuille!Thompson






"rthompson" a écrit dans le message de
groupe de discussion :
Bonjour à toutes tous

Petite question avir de partant

(je ne répondrais que ce soir)

Ma question est celle-ci

Faut-il renommer les noms pour chaque feuille insérée?
Que se passe-t-il si on laisse Excel faire?
Comme j'utilise des macro dans le genre de celle tout en dessous, faut-il
changer autre chose que le nom de feuille?
Pour le moment tout à l'air de fonctionner sans changer les noms, mais
j'ai
des doutes


J'esssssplikkke


Dans un document Excel j'ai une feuille nommée Documents_Solution

Dans cette feuille j'ai des plages nommées (entre-autres)

Docsolution_due_date

=OFFSET(Document_Solution!$F$6;1;;COUNTA(Document_Solution!$B:$B)-2;)

Il y en plusieurs du même style

Quand cette feuille est prête je fais une copie de la feuille
et je renomme cette copie Fred

Ma liste de nom n'a pas changée
Donc j'ai toujours le nom

Docsolution_due_date

Mais, sa définition de nom pour cette feuille j'ai

=OFFSET(Fred!$F$6;1;;COUNTA(Fred!$B:$B)-2;)


D'avance un grand merci et à ce soir

Rex

Voici la macro

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub A_Payer()
Application.ScreenUpdating = False
Sheets("Document_Solution").Select
Range("Docsolution_A_Payer").EntireRow.Hidden = False
For Each c In Range("Docsolution_A_Payer")
If c = 0 Then c.EntireRow.Hidden = True
Next

Sheets("Fred").Select
Range("Docsolution_A_Payer").EntireRow.Hidden = False
For Each c In Range("Docsolution_A_Payer")
If c = 0 Then c.EntireRow.Hidden = True
Next

Sheets("Summary").Select
Application.ScreenUpdating = True

End Sub


Avatar
MichDenis
Bonjour,

| le "gestionnaire de noms" permet de les modifier

| quel sont les conditions pour que la "ZONE" ou ("ETENDUE") d'un nom soit
| modifiable ou non ?

Je ne comprends pas le sens de ta question.

Donne un exemple concret d'une situation actuelle d'un nom existant dans
un fichier et comment tu voudrais le transformer. Comment Excel (gestion
des noms) t'empêche-t-il de le faire ?
Avatar
L.MAITRE
bonjour

Sur un nom de plage existant, quelles sont les conditions pour que la liste
déroulante "ZONE" soit grisée(non modifiable) ou non ?

merci


Louis

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

Bonjour,

| le "gestionnaire de noms" permet de les modifier

| quel sont les conditions pour que la "ZONE" ou ("ETENDUE") d'un nom soit
| modifiable ou non ?

Je ne comprends pas le sens de ta question.

Donne un exemple concret d'une situation actuelle d'un nom existant dans
un fichier et comment tu voudrais le transformer. Comment Excel (gestion
des noms) t'empêche-t-il de le faire ?