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

Nom TextBox

2 réponses
Avatar
JacquesH
Bonjour à toutes et tous,

J'ai une zone de texte dans une feuille et je la copie dans une seconde
feuille.

'Copie la zone de texte dans la feuille de départ
Sheets("Liste_calcul").Shapes("Text Box 1").Copy
Sheets("Liste").Select
Range("E15").Select
ActiveSheet.Paste
Selection.ShapeRange.IncrementLeft -25.5
Selection.ShapeRange.IncrementTop 0.75
[B2].Select

On peut sans doute faire plus simple.

Par la suite, je souhaite supprimer la nouvelle zone de texte, elle
s'appelle alors Text Box 2 :
Sheets("Liste").Shapes("Text Box 2").Cut

Le problème est le suivant : si la première macro est lancée
plusieurs fois, la zone de texte ne s'appelle plus 2, mais 3 puis 4...
Ma macro de suppression ne la retrouve donc pas.

Je souhaiterais avoir quelques idées pour renommer la zone de texte
sélectionnée (ou quelque chose de ce genre).

ActiveSheet.Shapes("Text Box 4").Name = "TxtB"
Fonctionne mais ne résoud pas le problème.

Selection.Shapes.Name = "TxtB"
En revanche ne fonctionne pas.

Merci de vos idées.

Jacques

2 réponses

Avatar
pierre.meb
Je ne sais pas bien ce que tu veux faire mais voici quelques remarques :

Il est possible de donner un nom à l'objet (Textbox) créer par macro

Exemple : (la textbox est sélectionnée au moment de sa création par la
macro, la sélection est renommée "toto")

ActiveSheet.OLEObjects.Add(ClassType:="Forms.TextBox.1", Link:úlse, _
DisplayAsIcon:úlse, Left:92.25, Top:S.25, Width:1.75,
Height _
:0.25).Select
Selection.Name = "toto"



Par la suite, je souhaite supprimer la nouvelle zone de texte, elle
s'appelle alors Text Box 2 :
Sheets("Liste").Shapes("Text Box 2").Cut



Pour supprimer un objet, tu le "coupes" (mise en atente de collage dans le
presse-papier)
alors qu'il est possible de le supprimer directement,

Exemple

ActiveSheet.Shapes("toto").Delete


Cordialement

Avatar
JacquesH
Bonjour et merci pour ta réponse,

La solution est bien dans ta réponse, j'avais testé de nombreuses
possibilités pour la nommer, mais pas : Selection.Name Tout fonctionne.

Bonne journée

Jacques

Je ne sais pas bien ce que tu veux faire mais voici quelques remarques :

Il est possible de donner un nom à l'objet (Textbox) créer par macro

Exemple : (la textbox est sélectionnée au moment de sa création par la
macro, la sélection est renommée "toto")

ActiveSheet.OLEObjects.Add(ClassType:="Forms.TextBox.1", Link:úlse, _
DisplayAsIcon:úlse, Left:92.25, Top:S.25, Width:1.75,
Height _
:0.25).Select
Selection.Name = "toto"



Par la suite, je souhaite supprimer la nouvelle zone de texte, elle
s'appelle alors Text Box 2 :
Sheets("Liste").Shapes("Text Box 2").Cut




Pour supprimer un objet, tu le "coupes" (mise en atente de collage dans le
presse-papier)
alors qu'il est possible de le supprimer directement,

Exemple

ActiveSheet.Shapes("toto").Delete


Cordialement