Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Les contrôles et VB - Lancement (Débutant)

  • Initiateur de la discussion Initiateur de la discussion angelspeed
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

A

angelspeed

Guest
Bonjour,

je débute en script VB et je rencontre un problème de base pour chaque script que je faits : ils ne se lance pas à l'ouverture du fichier. Je suis obligé d'aller dans VB et de faire F5.

Ce doit être tellement de base que j'ai pas réussi à trouver sur le forum...

Pour info, il s'agit de contrôles ActiveX et mes scripts sont simples :

- une combobox avec tri alphabétique

Private Sub UserForm_Initialize()
Feuil6.ComboBox1.Clear
Feuil6.ComboBox1.List() = Sheets("Outils").Range("A4:A7").Value
Feuil6.ComboBox1.List = ListSort(Feuil6.ComboBox1.List)
End Sub

-> la liste déroulante n'est pas remplie (juste le choix effectué avant la fermeture)

Question supplémentaire : comment faire pour que le champ soit vide au démarrage plutôt que d'avoir la dernière sélection enregistrée ?

- une animation Flash :

Private Sub Flash_lancement()
ShockwaveFlash1.Movie = "G:\Documents\OoN\logo.swf"
ShockwaveFlash1.Play
ShockwaveFlash1.Quality2 = "High"
ShockwaveFlash1.ScaleMode = 3
End Sub

-> le flash ne se lit pas, la propriété playing est toujours sur False

Merci pour votre aide.
 
Re : Les contrôles et VB - Lancement (Débutant)

Ça va mieux comme ça.
Je reste persuadé que 2 ComboBox, un pour la catégorie, un pour le produit restent la meilleure solution. Il faut alimenter la liste du second lors du changement du premier. Plusieurs idées sont envisageables. Une au hasard: des noms de plages couvrant les propuits des différentes catégories "Cat01", "Cat02" etc. Les 2 derniers chiffres étant le ListIndex du choix dans la 1ère Combo. Une autre idée: pourquoi ne pas mettre en face de chaque catégorie =LIGNE(La cellule catégorie): le ListIndex du premier combo donnerait le numéro-1 du premier produit, le Listindex+1 le dernier-1, la différence le nombre de ligne à spécifier au Resize. Une autre: Donner un nom toujours le même pour la plage des produit d'une catégorie mais définissant non pas une plage fixe mais une formule =DECALER(... qui renvoit à la bonne partie de la liste de produits. Les solutions sont nombreuses.
À+
 
Re : Les contrôles et VB - Lancement (Débutant)

Ou la faut que j'assimile tout ce que vous venez de me proposer 🙂

Je regarde à quoi ça correspond plus précisément et je reviens vers vous certainement.

Bonne soirée
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…