Nommer des textBox

Le
LucienMarcel
Bonjour,
En VBA excel 2003, j'ai besoin de créer des textBox et de les nommer pour
pouvoir les réexploiter (copie dans un tableau de bord en lecture seule) en
les rappelant par leur nom et non par leur n° d'ordre affecté par excel.
Je n'arrive pas à trouver le code VBA permettant de nommer chaque textBox
lors de sa création.
Quelqu'un peut-il m'aider?
Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Modeste
Le #4392871
Bonsour® LucienMarcel avec ferveur ;o))) vous nous disiez :

Bonjour,
En VBA excel 2003, j'ai besoin de créer des textBox et de les nommer pour
pouvoir les réexploiter (copie dans un tableau de bord en lecture seule) en
les rappelant par leur nom et non par leur n° d'ordre affecté par excel.
Je n'arrive pas à trouver le code VBA permettant de nommer chaque textBox
lors de sa création.
Quelqu'un peut-il m'aider?


heu ....tiré directement de l'aide
object.Name [= String]
Chaque contrôle ajouté à une feuille au moment de sa conception doit avoir un
nom unique.

ex : TextBox1.name = "TB_Prenom"
TextBox2.name = "TB_Adresse"

--
--
@+
;o)))

LucienMarcel
Le #4392751
Merci Modeste de vous interesser à mon problème. Mais pour faire cela, il
faut savoir qu'Excel a nommé d'autorité la nouvelle TextBox créée "TextBox1"
ou "TextBox2" pour l'appeler et la renommer d'un nom fixe qui en permettra
une utilisation sans erreur.
Amicalement
Luc



Bonsour® LucienMarcel avec ferveur ;o))) vous nous disiez :

Bonjour,
En VBA excel 2003, j'ai besoin de créer des textBox et de les nommer pour
pouvoir les réexploiter (copie dans un tableau de bord en lecture seule) en
les rappelant par leur nom et non par leur n° d'ordre affecté par excel.
Je n'arrive pas à trouver le code VBA permettant de nommer chaque textBox
lors de sa création.
Quelqu'un peut-il m'aider?


heu ....tiré directement de l'aide
object.Name [= String]
Chaque contrôle ajouté à une feuille au moment de sa conception doit avoir un
nom unique.

ex : TextBox1.name = "TB_Prenom"
TextBox2.name = "TB_Adresse"

--
--
@+
;o)))






MichDenis
Le #4392711
Cette macro crée un textbox au dimension de la cellule G5 portant le nom de TB_Prenom

Tu cherches autre chose ?
'-------------------------------
Sub test()
Dim L As Double, T As Double
Dim W As Double, H As Double

With ActiveSheet
With .Range("G5")
L = .Left
T = .Top
W = .Width
H = .Height
End With
With .OLEObjects
With .Add(ClassType:="Forms.TextBox.1", Link:úlse, _
DisplayAsIcon:úlse, Left:=L, Top:=T, _
Width:=W, Height:=H)
.Name = "Tb_Prenom"
End With
End With
End With

End Sub
'-------------------------------



"LucienMarcel"
Bonjour,
En VBA excel 2003, j'ai besoin de créer des textBox et de les nommer pour
pouvoir les réexploiter (copie dans un tableau de bord en lecture seule) en
les rappelant par leur nom et non par leur n° d'ordre affecté par excel.
Je n'arrive pas à trouver le code VBA permettant de nommer chaque textBox
lors de sa création.
Quelqu'un peut-il m'aider?
Merci
LucienMarcel
Le #4391641
Grand merci MichDenis. Ca marche pour la création de la TextBox, mais
comment la sélectionner (comment activer un objet OLE), puis placer dedans
un texte récupéré par ailleurs notamment par une inputBox?
Amicalement
lSteph
Le #4391581
Bonjour,

J'aurais bien répondu que l'appeler par son nom suffirait
l'ennui c'est que j'ai testé ton code "qui fonctionne" sauf
que cette instruction semble être ignorée:
.Name = "Tb_Prenom"

il s'appelle toujours TextBox1..???

Cordialement.

lSteph



On 12 avr, 14:16, "MichDenis"
Cette macro crée un textbox au dimension de la cellule G5 portant le no m de TB_Prenom

Tu cherches autre chose ?
'-------------------------------
Sub test()
Dim L As Double, T As Double
Dim W As Double, H As Double

With ActiveSheet
With .Range("G5")
L = .Left
T = .Top
W = .Width
H = .Height
End With
With .OLEObjects
With .Add(ClassType:="Forms.TextBox.1", Link:úlse, _
DisplayAsIcon:úlse, Left:=L, Top:=T, _
Width:=W, Height:=H)
.Name = "Tb_Prenom"
End With
End With
End With

End Sub
'-------------------------------

"LucienMarcel"
Bonjour,
En VBA excel 2003, j'ai besoin de créer des textBox et de les nommer po ur
pouvoir les réexploiter (copie dans un tableau de bord en lecture seule ) en
les rappelant par leur nom et non par leur n° d'ordre affecté par exc el.
Je n'arrive pas à trouver le code VBA permettant de nommer chaque textB ox
lors de sa création.
Quelqu'un peut-il m'aider?
Merci


lSteph
Le #4391551
..en fait ce n'est pas ignoré, c'est plus subtil:

Ceci fonctionne:

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
TextBox1.Text = "blabla"
End Sub

ceci aussi

ActiveSheet.OLEObjects("Tb_Prenom") .Select

Ceci ne fonctionne pas
ActiveSheet.OLEObjects("Tb_Prenom") .Text="blablabli"

Tu dois connaître le bon moyen...

;o)

@+

lSteph

On 13 avr, 11:55, "lSteph"
Bonjour,

J'aurais bien répondu que l'appeler par son nom suffirait
l'ennui c'est que j'ai testé ton code "qui fonctionne" sauf
que cette instruction semble être ignorée:
.Name = "Tb_Prenom"

il s'appelle toujours TextBox1..???

Cordialement.

lSteph

On 12 avr, 14:16, "MichDenis"
Cette macro crée un textbox au dimension de la cellule G5 portant le nom de TB_Prenom

Tu cherches autre chose ?
'-------------------------------
Sub test()
Dim L As Double, T As Double
Dim W As Double, H As Double

With ActiveSheet
With .Range("G5")
L = .Left
T = .Top
W = .Width
H = .Height
End With
With .OLEObjects
With .Add(ClassType:="Forms.TextBox.1", Link:úlse, _
DisplayAsIcon:úlse, Left:=L, Top:=T, _
Width:=W, Height:=H)
.Name = "Tb_Prenom"
End With
End With
End With

End Sub
'-------------------------------

"LucienMarcel"
Bonjour,
En VBA excel 2003, j'ai besoin de créer des textBox et de les nommer pour
pouvoir les réexploiter (copie dans un tableau de bord en lecture seu le) en
les rappelant par leur nom et non par leur n° d'ordre affecté par e xcel.
Je n'arrive pas à trouver le code VBA permettant de nommer chaque tex tBox
lors de sa création.
Quelqu'un peut-il m'aider?
Merci




MichDenis
Le #4391541
2 façons d'introduire du texte dans le textbox :
'-----------------------
Sub test1()

With Worksheets("Feuil1")
.Shapes("Tb_Prenom").OLEFormat.Object.Object.Text = "toto"
End With

End Sub
'-----------------------
Sub test2()

With Worksheets("Feuil1")
.Tb_Prenom.Text = "Tato"
End With

End Sub
'-----------------------



"LucienMarcel"
Grand merci MichDenis. Ca marche pour la création de la TextBox, mais
comment la sélectionner (comment activer un objet OLE), puis placer dedans
un texte récupéré par ailleurs notamment par une inputBox?
Amicalement
LucienMarcel
Le #4391421
Mille mercis à vous 3. Grace à vous j'avance sur mon appli.
Amicalement
--
LucienMarcel



...en fait ce n'est pas ignoré, c'est plus subtil:

Ceci fonctionne:

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
TextBox1.Text = "blabla"
End Sub

ceci aussi

ActiveSheet.OLEObjects("Tb_Prenom") .Select

Ceci ne fonctionne pas
ActiveSheet.OLEObjects("Tb_Prenom") .Text="blablabli"

Tu dois connaître le bon moyen...

;o)

@+

lSteph

On 13 avr, 11:55, "lSteph"
Bonjour,

J'aurais bien répondu que l'appeler par son nom suffirait
l'ennui c'est que j'ai testé ton code "qui fonctionne" sauf
que cette instruction semble être ignorée:
.Name = "Tb_Prenom"

il s'appelle toujours TextBox1..???

Cordialement.

lSteph

On 12 avr, 14:16, "MichDenis"
Cette macro crée un textbox au dimension de la cellule G5 portant le nom de TB_Prenom

Tu cherches autre chose ?
'-------------------------------
Sub test()
Dim L As Double, T As Double
Dim W As Double, H As Double

With ActiveSheet
With .Range("G5")
L = .Left
T = .Top
W = .Width
H = .Height
End With
With .OLEObjects
With .Add(ClassType:="Forms.TextBox.1", Link:úlse, _
DisplayAsIcon:úlse, Left:=L, Top:=T, _
Width:=W, Height:=H)
.Name = "Tb_Prenom"
End With
End With
End With

End Sub
'-------------------------------

"LucienMarcel"
Bonjour,
En VBA excel 2003, j'ai besoin de créer des textBox et de les nommer pour
pouvoir les réexploiter (copie dans un tableau de bord en lecture seule) en
les rappelant par leur nom et non par leur n° d'ordre affecté par excel.
Je n'arrive pas à trouver le code VBA permettant de nommer chaque textBox
lors de sa création.
Quelqu'un peut-il m'aider?
Merci









Publicité
Poster une réponse
Anonyme