[VBA] Comment remplir des textbox en série [Résolu]

Messages postés
1260
Date d'inscription
vendredi 10 juillet 2009
Dernière intervention
22 octobre 2018
- - Dernière réponse : cs_MPi
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
- 30 oct. 2012 à 14:26
Bonjour,
je ne suis pas sur d'avoir choisi le bon thème
mais voila mon problème:

Je fais une application sous Excel 2002 en vba
et je n'arrive pas à remplir des texbox dans une boucle que voici:
For i = 1 To 4
Controls("TextBox" & i).Value =
Cells(i, 2).Value
Next

J'ai essayé aussi:
TextBox & i = Cells(i, 2).Value
en vain.

Quelqu'un peut-il m'aider SVP? Merci.
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
3181
Date d'inscription
dimanche 15 février 2004
Dernière intervention
9 avril 2017
3
Merci
Bonjour,

Les controls sont dans la collection OLEObjects de ta feuille

Dim ctrl As OLEObject
For i = 1 To 4
  Set ctrl = ActiveSheet.OLEObjects("TextBox" & i)
  ctrl.Object.Value = Cells(i, 2).Value
Next


_____________
Kenji

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 105 internautes ce mois-ci

Commenter la réponse de Charles Racaud
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
0
Merci
Bonjour,
Tu ne développes donc pas sous :
Forum > VB.NET et VB 2005

qui n'a absolument rien à voir avec la section Langages dérivés > VBA, dans laquelle tu aurais du ouvrir la présente discussion
Veux-tu bien en prendre bonne note pour tes prochaines discussions VBA ?
C'est très important. La preuve ? ===>>
Sous VB.Net, tes textboxes se trouverait dans un container Form ou Panel.
Sous VBA, elle pourrait être également mise sur une feuille de calcul, hein !!!...
Il se trouve que le code montré ne peut que marcher, sous VBA/Excel, si les textboxes sont sur un UserForm.
Mais ce n'est pas la même syntaxe si sur une feuille de calcul.
Et tu ne nous a absolument rien dit quant à leur location ...


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
Messages postés
1260
Date d'inscription
vendredi 10 juillet 2009
Dernière intervention
22 octobre 2018
0
Merci
Désolé pour mon intrusion dans la mauvaise rubrique. je prends note! Je n'avais pas trouvé la rubrique vba dans toutes ces rubriques, alors j'ai choisi au hasard.
Faut-il que je transfert mon poste immédiatement ?
Sinon, j'ai mis mes texbox sur 1 feuille excel.

merci.
Commenter la réponse de mod77
Messages postés
1260
Date d'inscription
vendredi 10 juillet 2009
Dernière intervention
22 octobre 2018
0
Merci
Bonjour très cher Charles Racaud,

Vous êtes mon héro! Merci beaucoup pour ce code que je cherche depuis 2 jours.

Merci à tous de votre aide!

Bonne soiré et bonnes vacances!
Commenter la réponse de mod77
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
0
Merci
Verux-tu bien cliquer sur le tag Réponse Acceptée (au niveau de la réponse de Charles Racaud) et ainsi libérer ce sujet ? Merci de respecter cette autre règle.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
Messages postés
5
Date d'inscription
mardi 13 juillet 2010
Dernière intervention
30 octobre 2012
0
Merci
Bonjour,
j'ai un gros souci d'amateur vba je m'explique j'ai des colonnes qui correspond a des mois et des lignes a des actions courantes j'aimerais avec la méthode ListBox1.AddItem et Find afficher le nombre d'action selon le mois rechercher avec un textbox mon souci j'arrive a afficher le mois mais pas la plage de cellule just en dessous qui correspond au nombre d'action ci joint mon code
Quelqu'un peut-il m'aider SVP? Merci.

Private Sub CmdChercher_Click()
Dim fs As Worksheet
Dim Plage As Range, Cell As Range
Dim Recherche As String, Adresse As String
Dim Ligne As Variant
Dim C As Object
Dim i As Byte

ListBox1.Clear
Set fs = Sheets("SUIVI 2012")
Recherche = TextBox1
If Recherche = "" Then Exit Sub

For Each WS In Worksheets
Ligne = Worksheets(fs.Name).Range("" & "B" & "65536").End(xlUp).Row

Set Plage = Worksheets(fs.Name).Range("" & "B" & "1:" & "D" & Ligne)
With Plage
Set C = .Find(Recherche)
If Not C Is Nothing Then
Adresse = C.Address
i = 0
Do
ListBox1.AddItem "Ligne" & i
ListBox1.List(i, 0) = C.Value
ListBox1.List(i, 1) = C.Offset(0, 1).Value
ListBox1.List(i, 2) = C.Offset(0, 2).Value
ListBox1.List(i, 3) = C.Offset(0, 3).Value
ListBox1.List(i, 4) = C.Offset(0, 4).Value
i = i + 1
Set C = .FindNext(C)
Loop While Not C Is Nothing And C.Address <> Adresse
ListBox1.ColumnWidths = "2cm" & ";" & "2cm" & ";" & "2cm"

End If
End With
Next WS
End Sub
Commenter la réponse de adjovi7
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
0
Merci
Il faudrait que tu ouvres un nouveau sujet dans la section VBA

Ce sujet ne concerne pas ta question et a déjà été répondu...

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
Commenter la réponse de cs_MPi

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.