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

Nommer une zone variable

6 réponses
Avatar
JPMonnier
Bonsoir,
Excel 2000
Je sèche sur l'ajout d'un nom concernant une plage variable
Je sélectionne en vba une plage de cellule
puis j'ai cette ligne de code

Sheets("barres").Names.Add Name:="FENGTS", RefersToR1C1:=Selection.Address
pas de plantage
le nom attribué étant
="$M$2:$M$15" qui correspond bien à Selection
ce nom est non valide !
Comment dois-je modifier ma ligne de code pour le rendre valide
Merci d'avance
--
Cordialement
jpmonnier-nospam@neuf.fr

6 réponses

Avatar
michdenis
Pour donner un nom à ta plage de cellules sélectionner :

If TypeName(Selection) = "Range" Then
Selection.Name = Selection.Parent.Name & "!" & "LeNomDeLaPlageNommé"
End If



"JPMonnier" a écrit dans le message de groupe de discussion :

Bonsoir,
Excel 2000
Je sèche sur l'ajout d'un nom concernant une plage variable
Je sélectionne en vba une plage de cellule
puis j'ai cette ligne de code

Sheets("barres").Names.Add Name:="FENGTS", RefersToR1C1:=Selection.Address
pas de plantage
le nom attribué étant
="$M$2:$M$15" qui correspond bien à Selection
ce nom est non valide !
Comment dois-je modifier ma ligne de code pour le rendre valide
Merci d'avance
--
Cordialement

Avatar
garnote
Salut,

Essaie ceci :

Sub Nommer()
Set s = Selection
ActiveWorkbook.Names.Add Name:="FENGTS", RefersTo:=s
End Sub


Serge


"JPMonnier" a écrit dans le message de news:
Bonsoir,
Excel 2000
Je sèche sur l'ajout d'un nom concernant une plage variable
Je sélectionne en vba une plage de cellule
puis j'ai cette ligne de code

Sheets("barres").Names.Add Name:="FENGTS", RefersToR1C1:=Selection.Address
pas de plantage
le nom attribué étant
="$M$2:$M$15" qui correspond bien à Selection
ce nom est non valide !
Comment dois-je modifier ma ligne de code pour le rendre valide
Merci d'avance
--
Cordialement





Avatar
garnote
Ou plus prudent ( n'est-ce pas Denis ? ) :

Sub Nommer()
If TypeName(Selection) = "Range" Then _
ActiveWorkbook.Names.Add Name:="FENGTS", RefersTo:=Selection
End Sub

Serge



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

Essaie ceci :

Sub Nommer()
Set s = Selection
ActiveWorkbook.Names.Add Name:="FENGTS", RefersTo:=s
End Sub


Serge


"JPMonnier" a écrit dans le message de news:
Bonsoir,
Excel 2000
Je sèche sur l'ajout d'un nom concernant une plage variable
Je sélectionne en vba une plage de cellule
puis j'ai cette ligne de code

Sheets("barres").Names.Add Name:="FENGTS", RefersToR1C1:=Selection.Address
pas de plantage
le nom attribué étant
="$M$2:$M$15" qui correspond bien à Selection
ce nom est non valide !
Comment dois-je modifier ma ligne de code pour le rendre valide
Merci d'avance
--
Cordialement









Avatar
garnote
Viens de constater que ma macro définit un nom auquel on peut
se référer sur toutes les feuilles du classeur alors que celle de Denis
définit un nom auquel on peut se référer que sur la feuille contenant
la sélection.

Serge


"garnote" a écrit dans le message de news:
Ou plus prudent ( n'est-ce pas Denis ? ) :

Sub Nommer()
If TypeName(Selection) = "Range" Then _
ActiveWorkbook.Names.Add Name:="FENGTS", RefersTo:=Selection
End Sub

Serge



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

Essaie ceci :

Sub Nommer()
Set s = Selection
ActiveWorkbook.Names.Add Name:="FENGTS", RefersTo:=s
End Sub


Serge


"JPMonnier" a écrit dans le message de news:
Bonsoir,
Excel 2000
Je sèche sur l'ajout d'un nom concernant une plage variable
Je sélectionne en vba une plage de cellule
puis j'ai cette ligne de code

Sheets("barres").Names.Add Name:="FENGTS", RefersToR1C1:=Selection.Address
pas de plantage
le nom attribué étant
="$M$2:$M$15" qui correspond bien à Selection
ce nom est non valide !
Comment dois-je modifier ma ligne de code pour le rendre valide
Merci d'avance
--
Cordialement













Avatar
michdenis
| Ou plus prudent ( n'est-ce pas Denis ? )
Effectivement ;-)
ActiveWorkbook.Names.Add Name:="FENGTS", RefersTo:=Selectio
** ceci crée un nom défini au niveau du Workbook
le demandeur me semble-t-il définissait son nom au niveau de la feuille.
Avatar
JPMonnier
Bonsoir micheldenis
toujours aussi efficace !
C'est nickel
Merci ainsi qu'à garnote
--
Cordialement

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


| Ou plus prudent ( n'est-ce pas Denis ? )
Effectivement ;-)
ActiveWorkbook.Names.Add Name:="FENGTS", RefersTo:=Selectio
** ceci crée un nom défini au niveau du Workbook
le demandeur me semble-t-il définissait son nom au niveau de la
feuille.