OVH Cloud OVH Cloud

Nommer plage

8 réponses
Avatar
Jacquouille
Bonjour,
Comment puis-je introduire derL dans l'énoncé du baptême de la plage a1:a12
en remplaçant le 12 par derL ?

derl = Cells(Rows.Count, 1).End(xlUp).Row
ActiveWorkbook.Names.Add Name:="minou", RefersToR1C1:="=Feuil1!R1C1:R12C1"

Grand merci

Jacques
" Le vin est au repas ce que le parfum est à la femme."
.

8 réponses

Avatar
Michd
Sub test()
With Worksheets("Feuil1")
'Nom au niveau du classeur
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = "Minou"
'Nom au niveau de la feuille
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = .Name & "!Minou"
End With
End Sub
MichD
Avatar
Jacquouille
Voilà qui est encore plus concis.
merci Denis
Bonne fin de WE
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"Michd" a écrit dans le message de groupe de discussion :
pr1qm3$u15$
Sub test()
With Worksheets("Feuil1")
'Nom au niveau du classeur
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = "Minou"
'Nom au niveau de la feuille
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = .Name &
"!Minou"
End With
End Sub
MichD
Avatar
Jacquouille
Juste une précision:
Comment peux-tu attribuer un nom à une plage accessible au niveau du
classeur, en commençant par With Worksheets("Feuil1") ?
Déjà merci
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"Michd" a écrit dans le message de groupe de discussion :
pr1qm3$u15$
Sub test()
With Worksheets("Feuil1")
'Nom au niveau du classeur
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = "Minou"
'Nom au niveau de la feuille
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = .Name &
"!Minou"
End With
End Sub
MichD
Avatar
Michd
En supposant que la plage de cellules appartient à la feuil1
Observe le nom qui est donné à chaque nom. Regarde le résultat dans la fenêtre des NOMS d'Excel.
= "Minou"
= .Name & "!Minou"
MichD
"Jacquouille" a écrit dans le message de groupe de discussion : pr26f6$1j39$
Juste une précision:
Comment peux-tu attribuer un nom à une plage accessible au niveau du
classeur, en commençant par With Worksheets("Feuil1") ?
Déjà merci
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"Michd" a écrit dans le message de groupe de discussion :
pr1qm3$u15$
Sub test()
With Worksheets("Feuil1")
'Nom au niveau du classeur
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = "Minou"
'Nom au niveau de la feuille
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = .Name &
"!Minou"
End With
End Sub
MichD
Avatar
Jacquouille
Re bonjour,
J'ai copié ce filet de macro dans le TWB du fichier appelé "test somme".
-----------------------
Sub bapteme()
With Worksheets("Feuil1")
'Nom au niveau du classeur
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = "Minou"
'Nom au niveau de la feuille
'.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = .Name &
"!Minou"
End With
[c1] = Application.Evaluate("sum(minou)")
End Sub
--------------------------
La somme de la plage (a1:a17) de la F1 se met bien dans C1 de la feuille
active.
Par contre, j'obtiens exactement la même chose au niveau du nom, que
j'appelle la macro à partir de F1 ou F2. j'obtiens" feuil1!$A$1:$A$17"
affecté à Minou.
-------------------------
Donc, la macro fonctionne, mais il n'y a pas de différence au niveau du nom,
que ce soit F1 ou F2 active.
Pas grave du tout.
Je suis à deux doigts de perdre le peu de Latin qu'il me reste. Encore moins
grave.
Merci et bon WE
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"Michd" a écrit dans le message de groupe de discussion :
pr2cen$1sq7$
En supposant que la plage de cellules appartient à la feuil1
Observe le nom qui est donné à chaque nom. Regarde le résultat dans la
fenêtre des NOMS d'Excel.
= "Minou"
= .Name & "!Minou"
MichD
"Jacquouille" a écrit dans le message de groupe de discussion :
pr26f6$1j39$
Juste une précision:
Comment peux-tu attribuer un nom à une plage accessible au niveau du
classeur, en commençant par With Worksheets("Feuil1") ?
Déjà merci
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"Michd" a écrit dans le message de groupe de discussion :
pr1qm3$u15$
Sub test()
With Worksheets("Feuil1")
'Nom au niveau du classeur
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = "Minou"
'Nom au niveau de la feuille
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = .Name &
"!Minou"
End With
End Sub
MichD
Avatar
Michd
With Worksheets("Feuil1")
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = "Minou"
End With
A ) Pourquoi un point ".'" devant les expressions "Range" et "Rows" ?
C'est pour signifier que ces objets appartiennent à la feuil1
Peu importe où le code est écrit, module d'une feuille ou standard, cela est vrai.
Au lieu de "With Worksheets("Feuil1")", si tu utilises "With ActiveShee", le nom va être créé en
faisant référence à la plage de cellule qui est affichée à l'écran.
B ) Quelle différence entre une plage nommée au niveau de la feuille ou du classeur.
Dans les formules des feuilles, une plage nommée au niveau d'une feuille ne peut pas être
utilisée que dans la feuille où elle a été nommée ou lorsque le nom est utilisé à l'extérieur de la
feuille, il doit être précédé du nom de la feuille. Exemple, plage nommée dans la feuil1 : Totot
Dans la feuille Feuil1 : = Somme(toto)
Dans la feuille Feuil2 : = Somme(Feuil1.toto)
Si le VBA t'intéresse, le meilleur livre sur le sujet est celui de "John Walkerbach" "Excel 2000 et
VBA le guide du développeur". Il date, mais les principes de base sont bien expliqués. Il est
peut-être disponible dans une bibliothèque municipale...
MichD
Avatar
Michd
With Worksheets("Feuil1")
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = "Minou"
End With
A ) Pourquoi un point ".'" devant les expressions "Range" et "Rows" ?
C'est pour signifier que ces objets appartiennent à la feuil1
Peu importe où le code est écrit, module d'une feuille ou standard, cela est vrai.
Au lieu de "With Worksheets("Feuil1")", si tu utilises "With ActiveShee", le nom va être créé en
faisant référence à la plage de cellule qui est affichée à l'écran.
B ) Quelle différence entre une plage nommée au niveau de la feuille ou du classeur.
Dans les formules des feuilles, une plage nommée au niveau d'une feuille ne peut pas être
utilisée que dans la feuille où elle a été nommée ou lorsque le nom est utilisé à l'extérieur de la
feuille, il doit être précédé du nom de la feuille. Exemple, plage nommée dans la feuil1 : Totot
Dans la feuille Feuil1 : = Somme(toto)
Dans la feuille Feuil2 : = Somme(Feuil1.toto)
Si le VBA t'intéresse, le meilleur livre sur le sujet est celui de "John Walkerbach" "Excel 2000 et
VBA le guide du développeur". Il date, mais les principes de base sont bien expliqués. Il est
peut-être disponible dans une bibliothèque municipale...
MichD
Avatar
Jacquouille
VBA, c'est un peu comme les vaccins. Un petit rappel fait du bien de temps
à autres.
Merci
Quant au livre de John, ben, je l'ai ..... -(
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"Michd" a écrit dans le message de groupe de discussion :
pr48qa$kf5$
With Worksheets("Feuil1")
.Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Name = "Minou"
End With
A ) Pourquoi un point ".'" devant les expressions "Range" et "Rows" ?
C'est pour signifier que ces objets appartiennent à la feuil1
Peu importe où le code est écrit, module d'une feuille ou standard,
cela est vrai.
Au lieu de "With Worksheets("Feuil1")", si tu utilises "With ActiveShee", le
nom va être créé en
faisant référence à la plage de cellule qui est affichée à l'écran.
B ) Quelle différence entre une plage nommée au niveau de la feuille ou du
classeur.
Dans les formules des feuilles, une plage nommée au niveau d'une
feuille ne peut pas être
utilisée que dans la feuille où elle a été nommée ou lorsque le nom est
utilisé à l'extérieur de la
feuille, il doit être précédé du nom de la feuille. Exemple, plage nommée
dans la feuil1 : Totot
Dans la feuille Feuil1 : = Somme(toto)
Dans la feuille Feuil2 : = Somme(Feuil1.toto)
Si le VBA t'intéresse, le meilleur livre sur le sujet est celui de "John
Walkerbach" "Excel 2000 et
VBA le guide du développeur". Il date, mais les principes de base sont bien
expliqués. Il est
peut-être disponible dans une bibliothèque municipale...
MichD