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

utiliser un nom définit dans excel sous VBA

2 réponses
Avatar
mj
Bonjour,=20

Je cherche un moyen d'utiliser un nom r=E9f=E9ren=E7ant une=20
plage de cellule dans une sub VBA.

La plage de cellule se trouve dans un autre fichier.
La taille de cette plage est modifi=E9e en permanence par=20
des ajots ou des suppressions de lignes. Je ne peux donc=20
pas utiliser directement les r=E9f=E9rences de cellules.=20

Merci d'avance...

MJ

2 réponses

Avatar
Daniel.j
Tu peux t'inspirer de cette macro qui redefini le nom en cas d'ajout
d'une ligne.

Sub RedefiniNom()
With Names("BdClient")
.RefersTo = "=" & .RefersToRange. _
Resize(.RefersToRange.Rows.Count + 1).Address
End With
End Sub


--
Daniel MVP Excel
FAQ du Forum Microsoft Public Fr Excel
http://dj.joss.free.fr/faq.htm



"mj" a écrit dans le message de news:
658d01c42e90$cfbbdba0$
Bonjour,

Je cherche un moyen d'utiliser un nom référençant une
plage de cellule dans une sub VBA.

La plage de cellule se trouve dans un autre fichier.
La taille de cette plage est modifiée en permanence par
des ajots ou des suppressions de lignes. Je ne peux donc
pas utiliser directement les références de cellules.

Merci d'avance...

MJ
Avatar
MJ
Merci, mais je pense que j'avais mal formaulé ma question.
Mon problème n'est pas dans l'ajout d'une ligne ou d'une
colonne dans une zone référencée par un nom, encore que
cette procédure soit utile (je la met de coté).

Mon problème est d'utiliser ce nom dans un appel de
procédure VBA qui prend en paramètre un Range. En clair,
je veux pouvoir l'utiliser, ce nom, une fois défini.

C'est facile quand le nom et la procédure sont dans le
même classeur, mais dès que je les sépare, j'ai une
erreur, puisqu'il faut que je redéfinisse le classeur
auquel je me réfère, et qu'un classeur n'accepte pas Range
comme propriété.

Si tu connais une réponse à mon problème, ça me
permettrait d'écrire un programme propre. Sinon, je me
débroillerais version 'crade', avec des comptes de lignes
et colonnes par rapportà une origine donnée.

Merci encore

MJ
-----Message d'origine-----
Tu peux t'inspirer de cette macro qui redefini le nom en
cas d'ajout

d'une ligne.

Sub RedefiniNom()
With Names("BdClient")
..RefersTo = "=" & .RefersToRange. _
Resize(.RefersToRange.Rows.Count + 1).Address
End With
End Sub


--
Daniel MVP Excel
FAQ du Forum Microsoft Public Fr Excel
http://dj.joss.free.fr/faq.htm



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

658d01c42e90$cfbbdba0$
Bonjour,

Je cherche un moyen d'utiliser un nom référençant une
plage de cellule dans une sub VBA.

La plage de cellule se trouve dans un autre fichier.
La taille de cette plage est modifiée en permanence par
des ajots ou des suppressions de lignes. Je ne peux donc
pas utiliser directement les références de cellules.

Merci d'avance...

MJ


.