begin process at 2013 06 19 07:56:32
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBA

 > 

Gérer les Objets VBA par une Variable


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Gérer les Objets VBA par une Variable

mercredi 6 mars 2013 à 17:04:54 | Gérer les Objets VBA par une Variable

Adharaax

Bonjour,

J'ai une petite question, j'essaie d'afficher / Masqer des Zones de Texte selon la sélection dans une liste à choix multiples.
Lorsque la ligne 1 est Sélectionnée, je veux fair apparaitre le Texte 1 et comme ça sur 20 Zones de Texte.

Une boucle For - Nexte me permet de tester chaque lignes de ma liste et c'est là que je bloque.
Comment me servir de ce N° pour afficher / masquer la Zone correspondante ?

Un exemple de ce que je voudrais :
Public Sub List_Change()
For i = 0 to 20
If me.List.selected(i) = True Then
List & i.Visible = True
Else
List & i.Visible = False
End If
Next
End Sub


Merci d'avance
mercredi 6 mars 2013 à 17:39:41 | Re : Gérer les Objets VBA par une Variable

ucfoutu

Membre Club
Bonjour,
qu'est List0 (par exemple) (quel type de contrôle est-ce ?)
S'il s'agit d'une textbox ===>>
Controls("list" & i) se réfère à la textbox nommée list0 si i = 0, list1 si x = 1, etc ...

PS : tu gagnerais probablement beaucoup à utiliser plutôt un groupe de textbox indexées en ce qui concerne ces textboxes

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
mercredi 6 mars 2013 à 19:05:54 | Re : Gérer les Objets VBA par une Variable

jack

Administrateur CodeS-SourceS
Salut

Pas d'indexation possible, c'est du VBA, comme ne le précise pas la catégorie de la question --> Catégorie modifiée

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on le partage (Socrate)
mercredi 6 mars 2013 à 19:51:05 | Re : Gérer les Objets VBA par une Variable

MPi

Une liste à choix multiple est-elle une Listbox pour toi ?


MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
mercredi 6 mars 2013 à 20:42:10 | Re : Gérer les Objets VBA par une Variable

ucfoutu

Membre Club
Ah ! du VBA !
Il manque alors maintenant une précision d'importance : sur quoi sont mes ces contrôles !
Car la réponse est différente dans un cas ou dans l'autre !
Conclusion : on en est au 5ème message par légèreté de l'exposé de la difficulté.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
mercredi 6 mars 2013 à 21:45:36 | Re : Gérer les Objets VBA par une Variable

Adharaax

Re,

Tout d'abord merci pour votre attention.
Ensuite je croyais avoir mis ce post au bon endroit, autant pour moi

Donc en ce qui concerne mon pb,
Oui je suis sur VBA Excel (2003)

Mon contrôle est réalisé par une ListBox appelée dans l'exemple List
La List est à choix multiples : MultiSelect à 1

Les Zones à Afficher / Masquer sont de simple Textbox appelées List1 à List20, chacune liée à une ligne de List

Que dire de plus ?
Je veux afficher List1 lorsque la première ligne de List est sélectionnée et Masquer List1 dans le cas contraire
mercredi 6 mars 2013 à 21:49:20 | Re : Gérer les Objets VBA par une Variable

Adharaax

Heu,

Comme j'ai 20 TextBox à gérer, je n'ai pas envie de tester chaque ligne séparément, une boucle serait plus propre.

D'où ma question
mercredi 6 mars 2013 à 22:50:48 | Re : Gérer les Objets VBA par une Variable

MPi

Selon ce que tu dis, tu veux afficher List1 seulement si la 1ere ligne de List est sélectionnée, donc

Code Visual Basic :
If List.ListIndex = 0 then 
   List1.Visible = True
Else
   List1.Visible = false
End If


On pourrait simplifier, mais c'est plus compréhensible de cette façon...

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
mercredi 6 mars 2013 à 23:14:19 | Re : Gérer les Objets VBA par une Variable

Adharaax

C'est la version pas à pas effectivement.
Mais j'ai 20 fois ce code à entrer, en plus d'autres tris sur ces états (en pyramide)
Le but est donc de créer une boucle en passant en revu les 20 TextBox à la chaîne, selon les Sélection de List
La Variable obtenue pouvant alors être réutilisée tout le long du code

Code Visual Basic :
Public Sub List_Change()
For i = 0 to 19
If me.List.selected(i) = True Then

List & i.Visible = True
Else
List & i.Visible = False
End If
Next
End Sub


En rouge les mentions que je voudrais piloter par variable.
mercredi 6 mars 2013 à 23:29:55 | Re : Gérer les Objets VBA par une Variable

MPi

Alors, comme le suggérait ucfoutu, tu peux utiliser Controls

Disons que tes textbox se nomment Textbox1, Textbox2, Textbox3,... et sont dans le même ordre que les lignes de ta liste, tu pourrais tout mettre ça dans une boucle du genre

Code Visual Basic :
For I = 0 to List.Listcount - 1
   If list.selected(i) then
      Controls("Textbox" & i - 1). visible = True
   Else
      Controls("Textbox" & i - 1). visible = False
   End If
Next


Je mets -1 parce que les Index d'une Listbox commencent à 0 et tes contrôles commenceraient à 1...

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

1 2 3

Cette discussion est classée dans : vba, texte, gérer, list, objets


Répondre à ce message

Sujets en rapport avec ce message

gérer plusieurs espace dans un textbox [ par c@simir ] Salut !!!J'ai fait une petite interface avec deux textbox,l'un où on écrit le texte, l'autre où le texte est modifié.Mon objectif est facilité mon tra Comment traduire des Chiffres en Texte avec VBA Excel [ par bobbyMac ] J'essaye de traduire des chiffres en Texte en VBA avec Excel est ce possible ???Exemple 21 donne Vingt et un.Merci d'avance. Objets Outlook en VBA [ par libop ] Je recherche la liste des objets Outlook en VBA, notament tout ce qui concerne le calendrier Outlook.Merci de me donner des infos !! ;-)libop TREEVIEW : comment le gérer en VBA ? [ par Filou07 ] Salut,J'ai un joli treeview dans un de mes formulaires sous Access 2000. Quand je clique sur un node, ça m'affiche l'enregistrement qui correspond.Je Grille sous VBA Access 97 [ par ElMagnifico ] Bonjour!Je voudrais savoir s'il existe des composants comme MsFlexGrid ou VsFlexGrid sous VBA Access 97 parce que ces deux là je les trouve pas.Sinon VBA+ACCESS+forms : facile mais j'y arrive pas [ par lmondeil ] Light. Je suis nul mais je me soigne!Ca fait 3 heures que j'essaie de faire un truc a la con en VBA sous ACCESS :J'ai une table toute avec un champ te Enregistrement du contenu dun objet LIST dans un fichier texte...merci [ par suppos ] Voial mon pb , je voudrais enregistrer le contenu d'un objet LIST dans un fichier texteCar lenregistrement marche ms lorsque je regarde si le fichier Access 97 VBA : copie texte dans ClipBoard [ par rododeini ] Je cherche à placer dans le presse papier le contenu du contrôle d'un formulaire Access 97 . Qule est le code associé ? vider une liste VBA [ par yaya31 ] Bonjour aux leve tot!hier j ai demandé comment on vidait une liste on m a dit for i=0 to fin de listlist.item(i)=""next iMais je pense que c est du VB Recuperer un "renvoi" en VBA sous word [ par dahuDextrogyre ] Bonjour,J'ai un texte Word, avec des renvois vers des titres.J'ai une macro qui parse mon texte (pour de l'export XML), et je souhaite récupérer les o


Nos sponsors


Sondage...

CalendriCode

Juin 2013
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,061 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales