OVH Cloud OVH Cloud

Nom des cellules

4 réponses
Avatar
Aurélien29
Bonjour à tous,

Sous VBA, je voudrais accéder aux noms des cellules.

J'ai trouvé cette méthode:

Set newSheet = Worksheets.Add
i = 1
For Each nm In ActiveWorkbook.Names
newSheet.Cells(i, 1).Value = nm.Name
newSheet.Cells(i, 2).Value = "'" & nm.RefersTo
i = i + 1
Next

Ca, ça marche mais moi je voudrais accéder directement au nom de la cellule:

date=workbooks(nom1).worksheets(1).Range("$A$1").Name

Mais il ne me trouve pas le nom de la cellule alors qu'il y en a un.

Si quelqu'un peut m'aider et pour tous ceux qui vont essayer, merci d'avance

4 réponses

Avatar
denis le breton
Bonjour
peut-être pour une cellule dont le nom est 'datun'
-------------
Application.Goto Reference:="Datun"
MaDate = ActiveCell.Value
MsgBox MaDate
---------------

A+
Denis

Bonjour à tous,

Sous VBA, je voudrais accéder aux noms des cellules.

J'ai trouvé cette méthode:

Set newSheet = Worksheets.Add
i = 1
For Each nm In ActiveWorkbook.Names
newSheet.Cells(i, 1).Value = nm.Name
newSheet.Cells(i, 2).Value = "'" & nm.RefersTo
i = i + 1
Next

Ca, ça marche mais moi je voudrais accéder directement au nom de la cellule:

date=workbooks(nom1).worksheets(1).Range("$A$1").Name

Mais il ne me trouve pas le nom de la cellule alors qu'il y en a un.

Si quelqu'un peut m'aider et pour tous ceux qui vont essayer, merci d'avance


Avatar
Aurélien29
C pas tout à fait ça que je cherchais :

for i=1 to n
for j=1 to m
if sheets(page).cells(i,j).name="date" then
........
next j
next i

Mais je pense que je vais m'en sortir avec ce que tu m'as donnée.

Merci Denis le BRETON


Bonjour
peut-être pour une cellule dont le nom est 'datun'
-------------
Application.Goto Reference:="Datun"
MaDate = ActiveCell.Value
MsgBox MaDate
---------------

A+
Denis

Bonjour à tous,

Sous VBA, je voudrais accéder aux noms des cellules.

J'ai trouvé cette méthode:

Set newSheet = Worksheets.Add
i = 1
For Each nm In ActiveWorkbook.Names
newSheet.Cells(i, 1).Value = nm.Name
newSheet.Cells(i, 2).Value = "'" & nm.RefersTo
i = i + 1
Next

Ca, ça marche mais moi je voudrais accéder directement au nom de la cellule:

date=workbooks(nom1).worksheets(1).Range("$A$1").Name

Mais il ne me trouve pas le nom de la cellule alors qu'il y en a un.

Si quelqu'un peut m'aider et pour tous ceux qui vont essayer, merci d'avance




Avatar
Michel Gaboly
Bonsoir,
Un objet Name a 2 propriétés essentielles, Name (le nom tel qu'il
apparaît dans la liste quand on fait Insérer, Nom, Définir, ... et
RefersTo (ce à quoi il correspond (qui n'est pas forcément une plage de
cellules).

Il faut donc écrire :

Workbooks(nom1).Sheets(1).Range("A1").Name.Name



Bonjour à tous,

Sous VBA, je voudrais accéder aux noms des cellules.

J'ai trouvé cette méthode:

Set newSheet = Worksheets.Add
i = 1
For Each nm In ActiveWorkbook.Names
newSheet.Cells(i, 1).Value = nm.Name
newSheet.Cells(i, 2).Value = "'" & nm.RefersTo
i = i + 1
Next

Ca, ça marche mais moi je voudrais accéder directement au nom de la cellule:

date=workbooks(nom1).worksheets(1).Range("$A$1").Name

Mais il ne me trouve pas le nom de la cellule alors qu'il y en a un.

Si quelqu'un peut m'aider et pour tous ceux qui vont essayer, merci d'avance



--
Cordialement,

Michel Gaboly
www.gaboly.com

Avatar
Bourby
bonsoir,

pour invoquer une plage nommée "maCellule" dans Excel, les syntaxes
suivantes conviennent:
range("maCellule").Select (voir l'aide à : Référence à des
plages nommées)
x=[maCellule].value (voir l'aide à: Evaluate)

Cordialement

Bourby

"Aurélien29" a écrit dans le message
news:
Bonjour à tous,

Sous VBA, je voudrais accéder aux noms des cellules.

J'ai trouvé cette méthode:

Set newSheet = Worksheets.Add
i = 1
For Each nm In ActiveWorkbook.Names
newSheet.Cells(i, 1).Value = nm.Name
newSheet.Cells(i, 2).Value = "'" & nm.RefersTo
i = i + 1
Next

Ca, ça marche mais moi je voudrais accéder directement au nom de la
cellule:


date=workbooks(nom1).worksheets(1).Range("$A$1").Name

Mais il ne me trouve pas le nom de la cellule alors qu'il y en a un.

Si quelqu'un peut m'aider et pour tous ceux qui vont essayer, merci
d'avance