Combobox propriete style qui ne marche pas

jubatail Messages postés 39 Statut Membre -  
jubatail Messages postés 39 Statut Membre -
Bonjour,

la propriété style = 2 bloque mon programme

et je ne sais pas du tout comment faire car il bloque dans la boucle d'initialiser des combo et dans la boucle actualisation des combo lors d'un changement.

est ce quelqu'un peut m'aider ?
MERCI

3 réponses

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    Votre fichier d'un moment modifie a ma "sauce" pour le remplissage et reactu de combobox. Indépendamment, dans votre code il y a de declarations de variables contradictoires: en entete pour etre utilisable dans toute la "feuille" de code et dans des procedures, pas bon ca

    https://mon-partage.fr/f/eeAMSxzG/
    0
    1. jubatail Messages postés 39 Statut Membre
       
      je comprend pas ce que vous dite il y a des variables contradictoires ok je vais essayer de voir ca
      je ne peux pas ouvrir votre fichier
      0
    2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > jubatail Messages postés 39 Statut Membre
       
      Re,

      Pouvez pas ou ca met treeeeeeeeees longtemps (38Mo, pour un fichier excel.....)

      il y a des variables contradictoires
      Non, declarations de variables contradictoires:
      0
    3. jubatail Messages postés 39 Statut Membre > f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention  
       
      je peux pas site bloqué au boulot :s
      0
    4. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > jubatail Messages postés 39 Statut Membre
       
      Re,

      Oui, mais comment l'avez vous mis a dispo par ce meme site ?????
      0
    5. Jubatail
       
      Je vais regarder depuis chez moi ☺
      0
  2. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Bonjour,

    C'est pourtant facile à comprendre...
    ComBoMachin.Style = 2 empêche la saisie, y compris lors du "remplissage" de la Combo par le code.

    Donc, pour tes Sub "initialise" et "actualisation", tu doit :
    1- remettre à 0 la propriété Style,
    2- remplir ta Combo,
    3- remettre à 2 ta propriété Style.

    A noter, tu n'auras pas accès à certaines propriétés de la ComBobox tel que .Text (cf exemple).

    Exemple :
    Private Sub Actualisation(C As MsForms.ComBobox)
    Dim i&
    
       With C
          .Style = 0
          .Clear
          For i = 0 To 10
              .AddItem "Liste " & i
          Next i
          .Text = "Faites vos choix" 'NE FONCTIONNERA PAS sauf à l'ajouter avec AddItem
          .Style = 2
       End With
    End Sub

    0
    1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Bonjour pijaku,

      Dans le fichier que j'ai modifie pour elle en fonction de sa demande de ne pas pouvoir modifier(donc ecrire ou sup a la mano) dans les comboboxs, je ne comprends pas trop son dernier post..
      0
      1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773 > f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention  
         
        Salut,

        Ce qu'il (ou elle) veut, c'est ceci :
        obj.Value = nom ' puis on replace la valeur initiale de la boxe (vide ou valeur qui avait été choisie par l'utilisateur)

        Or, ce n'est pas possible si on veut bloquer la saisie (cf mon explication sur les propriété manquantes lors de l'utilisation de Style).

        Si il (ou elle) veut cela, il faut :
        - d'abord stocker "nom",
        - voir si "nom" existe toujours après l'actualisation,
        -- si oui on place le combobox.ListIndex sur cette valeur
        -- si non, on l'ajoute avec AddItem, ou pas selon ce qu'il (ou elle) veut...

        Mais de toutes façons, sans précision, ET sans que le demandeur n'ajoute des choses dans ton dos sans te le signaler, ça n'ira pas beaucoup plus loin.

        D’où mon explication de texte plus haut...


        EDIT : 32.65 Mo... Ça ne va pas tarder à planter c't'affaire...
        0
      2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention  
         
        Re,

        Ce qu'il (ou elle) veut, c'est ceci :
        Oui, c'etait avant, maintenant plus besoin, du moins pour moi. J'attends un peu plus d'explications

        EDIT : 32.65 Mo... Ça ne va pas tarder à planter c't'affaire...
        ben, ca rame un peu et je ne comprends trop cette taille de fichier
        0
      3. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773 > f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention  
         
        je ne comprends trop cette taille de fichier

        Ben oui... La feuille DESIGNATION PART et sa mise en page sur 1 000 000 et quelques lignes en est la cause.
        Applique cette macro, tu descendra à 244 Ko...

        Sub reduit()
           Sheets("DESIGNATION PART").Range("A10:A" & Rows.Count).EntireRow.Delete
        End Sub
        0
      4. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention  
         
        Re,

        Merci du renseignement car je n'ai pas trop cherche, mais ce qu'il faut savoir, c'est un fichier allege qui a ete fourni, donc le fichier complet ca va surement "merder" a un moment ou un autre
        0
  3. jubatail Messages postés 39 Statut Membre
     
    Bonjour,
    merci pour tous ses renseignements j'ai réussi a faire ce que je voulais ^^

    bien joué ;)
    0