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

Renommer des cellules - Excel 2003

5 réponses
Avatar
Jacques
Bonjour,

Je voudrais renommer tout un ensemble de cellules (substituer un nom à un
autre pour ces cellules). Existe-t-il une fonction qui le permette?

Merci

5 réponses

Avatar
JB
Bonsoir,

Lancer cette procédure qui crée une feuille 'temp' avec les noms
actuels:

Sub NomsActuels()
Application.DisplayAlerts = False
On Error Resume Next
Sheets("Temp").Delete
On Error GoTo 0
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = "Temp"
nchamps = 0
For Each n In ActiveWorkbook.Names
Sheets("temp").Cells(nchamps + 2, 1) = n.Name
Sheets("temp").Cells(nchamps + 2, 2) = n
nchamps = nchamps + 1
Next n
End Sub

Mettre les nouveaux noms en colonne C puis lancer:

Sub NouveauxNoms()
For Each c In Range(Sheets("temp").[A2], Sheets("temp").
[A65000].End(xlUp))
If c.Offset(0, 2) <> "" Then
y = c.Offset(0, 1)
On Error Resume Next
ActiveWorkbook.Names.Add Name:=c.Offset(0, 2), RefersTo:=y
If Err = 0 Then ActiveWorkbook.Names(c.Value).Delete
End If
Next c
End Sub

JB

On 28 fév, 19:14, "Jacques" <none> wrote:
Bonjour,

Je voudrais renommer tout un ensemble de cellules (substituer un nom à u n
autre pour ces cellules).  Existe-t-il une fonction qui le permette?

Merci


Avatar
JB
http://cjoint.com/?cCunkYwdl7

JB

On 28 fév, 20:09, JB wrote:
Bonsoir,

Lancer cette procédure qui crée une feuille 'temp' avec les noms
actuels:

Sub NomsActuels()
   Application.DisplayAlerts = False
   On Error Resume Next
   Sheets("Temp").Delete
   On Error GoTo 0
   Sheets.Add after:=Sheets(Sheets.Count)
   ActiveSheet.Name = "Temp"
   nchamps = 0
   For Each n In ActiveWorkbook.Names
     Sheets("temp").Cells(nchamps + 2, 1) = n.Name
     Sheets("temp").Cells(nchamps + 2, 2) = n
     nchamps = nchamps + 1
   Next n
End Sub

Mettre les nouveaux noms en colonne C puis lancer:

Sub NouveauxNoms()
 For Each c In Range(Sheets("temp").[A2], Sheets("temp").
[A65000].End(xlUp))
     If c.Offset(0, 2) <> "" Then
       y = c.Offset(0, 1)
       On Error Resume Next
       ActiveWorkbook.Names.Add Name:=c.Offset(0, 2), RefersTo: =y
       If Err = 0 Then ActiveWorkbook.Names(c.Value).Delete
     End If
 Next c
End Sub

JB

On 28 fév, 19:14, "Jacques" <none> wrote:



Bonjour,

Je voudrais renommer tout un ensemble de cellules (substituer un nom à un
autre pour ces cellules).  Existe-t-il une fonction qui le permette?

Merci- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
Jacques
Merci c'est exactement ce que je voulais !


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

Bonsoir,

Lancer cette procédure qui crée une feuille 'temp' avec les noms
actuels:

Sub NomsActuels()
Application.DisplayAlerts = False
On Error Resume Next
Sheets("Temp").Delete
On Error GoTo 0
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = "Temp"
nchamps = 0
For Each n In ActiveWorkbook.Names
Sheets("temp").Cells(nchamps + 2, 1) = n.Name
Sheets("temp").Cells(nchamps + 2, 2) = n
nchamps = nchamps + 1
Next n
End Sub

Mettre les nouveaux noms en colonne C puis lancer:

Sub NouveauxNoms()
For Each c In Range(Sheets("temp").[A2], Sheets("temp").
[A65000].End(xlUp))
If c.Offset(0, 2) <> "" Then
y = c.Offset(0, 1)
On Error Resume Next
ActiveWorkbook.Names.Add Name:=c.Offset(0, 2), RefersTo:=y
If Err = 0 Then ActiveWorkbook.Names(c.Value).Delete
End If
Next c
End Sub

JB

On 28 fév, 19:14, "Jacques" <none> wrote:
Bonjour,

Je voudrais renommer tout un ensemble de cellules (substituer un nom à un
autre pour ces cellules). Existe-t-il une fonction qui le permette?

Merci


Avatar
Jacques
Je me souviens d'une macro complémentaire que j'avais trouvée pour les
toutes 1eres versions d'excel. Elle ajoutait dans le menu insertion/nom une
commande "redéfinir" qui affichait une boîte de dialogue permettant de
sélectionner un nom et de renommer la cellule associée

Je vais essayer d'adapter votre macro pour pouvoir l'utiliser pour un
ensemble de feuilles (environ une centaine) dont certains noms doivent être
renommés. je voudrais :

* Simplement renommer certains noms suivant un tableau ne comportant que 2
colonnes (ancien nom, nouveau nom), sachant que les noms existants ne sont
pas forcément situés à la même référence dans tous les feuilles.
* Sans devoir créer à chaque fois une liste des noms existants avec les
nouveaux noms en colonne 3

En gros , que la macro ouvre la centaine de feuilles et renomme les noms de
ma liste, où qu'ils se trouvent dans chacune des feuilles

Cordialement

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

http://cjoint.com/?cCunkYwdl7

JB

On 28 fév, 20:09, JB wrote:
Bonsoir,

Lancer cette procédure qui crée une feuille 'temp' avec les noms
actuels:

Sub NomsActuels()
Application.DisplayAlerts = False
On Error Resume Next
Sheets("Temp").Delete
On Error GoTo 0
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = "Temp"
nchamps = 0
For Each n In ActiveWorkbook.Names
Sheets("temp").Cells(nchamps + 2, 1) = n.Name
Sheets("temp").Cells(nchamps + 2, 2) = n
nchamps = nchamps + 1
Next n
End Sub

Mettre les nouveaux noms en colonne C puis lancer:

Sub NouveauxNoms()
For Each c In Range(Sheets("temp").[A2], Sheets("temp").
[A65000].End(xlUp))
If c.Offset(0, 2) <> "" Then
y = c.Offset(0, 1)
On Error Resume Next
ActiveWorkbook.Names.Add Name:=c.Offset(0, 2), RefersTo:=y
If Err = 0 Then ActiveWorkbook.Names(c.Value).Delete
End If
Next c
End Sub

JB

On 28 fév, 19:14, "Jacques" <none> wrote:



Bonjour,

Je voudrais renommer tout un ensemble de cellules (substituer un nom à
un
autre pour ces cellules). Existe-t-il une fonction qui le permette?

Merci- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
Jacques
une centaine de classeurs en fait, pas une centaine de feuilles

"Jacques" <none> a écrit dans le message de groupe de discussion :
#b$
Je me souviens d'une macro complémentaire que j'avais trouvée pour les
toutes 1eres versions d'excel. Elle ajoutait dans le menu insertion/nom une
commande "redéfinir" qui affichait une boîte de dialogue permettant de
sélectionner un nom et de renommer la cellule associée

Je vais essayer d'adapter votre macro pour pouvoir l'utiliser pour un
ensemble de feuilles (environ une centaine) dont certains noms doivent être
renommés. je voudrais :

* Simplement renommer certains noms suivant un tableau ne comportant que 2
colonnes (ancien nom, nouveau nom), sachant que les noms existants ne sont
pas forcément situés à la même référence dans tous les feuilles.
* Sans devoir créer à chaque fois une liste des noms existants avec les
nouveaux noms en colonne 3

En gros , que la macro ouvre la centaine de feuilles et renomme les noms de
ma liste, où qu'ils se trouvent dans chacune des feuilles

Cordialement

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

http://cjoint.com/?cCunkYwdl7

JB

On 28 fév, 20:09, JB wrote:
Bonsoir,

Lancer cette procédure qui crée une feuille 'temp' avec les noms
actuels:

Sub NomsActuels()
Application.DisplayAlerts = False
On Error Resume Next
Sheets("Temp").Delete
On Error GoTo 0
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = "Temp"
nchamps = 0
For Each n In ActiveWorkbook.Names
Sheets("temp").Cells(nchamps + 2, 1) = n.Name
Sheets("temp").Cells(nchamps + 2, 2) = n
nchamps = nchamps + 1
Next n
End Sub

Mettre les nouveaux noms en colonne C puis lancer:

Sub NouveauxNoms()
For Each c In Range(Sheets("temp").[A2], Sheets("temp").
[A65000].End(xlUp))
If c.Offset(0, 2) <> "" Then
y = c.Offset(0, 1)
On Error Resume Next
ActiveWorkbook.Names.Add Name:=c.Offset(0, 2), RefersTo:=y
If Err = 0 Then ActiveWorkbook.Names(c.Value).Delete
End If
Next c
End Sub

JB

On 28 fév, 19:14, "Jacques" <none> wrote:



Bonjour,

Je voudrais renommer tout un ensemble de cellules (substituer un nom à
un
autre pour ces cellules). Existe-t-il une fonction qui le permette?

Merci- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -