combobox dans userform : Optimisation d'un code

dreamalain

XLDnaute Junior
Bonsoir

J'ai plusieurs actions à coder sur une quarantaine de combobox
Je ne sais les programmer que les uns après les autres et ca représente beaucoup de lignes

Pouvez m'aider à les optimiser :

Dans l'initialisation de l'userform :

VB:
'Remplissage de la liste
           With sheets("TEST")
                    Me.Combobox.List = .Range("A2:A" & .Range("A65536").End(xlUp).Row).Value

             end with

'Récupération de la valeur  de la ligne existante sur la feuille en cour :
           
  Combobox1.Value = Cells(8, 2)

Remplissage  par défaut d'un item  si  la cellule en colonne B est renseignée  :            

            If Not IsEmpty(Cells(8, 2).Value) Then Combobox1.ListIndex = 5

Dans le bouton de commande pour enregistrer la ligne des données


VB:
Private Sub CmdEnregistrer_Click()

Application.ScreenUpdating = False
With Sheets("TEST")


    lg = 0
     Select Case Combobox1.ListIndex
     Case -1
        If Combobox1 <> "" Then lg = .Range("A65536").End(xlUp).Row + 1
     Case Else
        lg = Combobox1.ListIndex + 2
     End Select
  If lg > 0 Then
           .Cells(lg, 1) = Me.Combobox1
           .Cells(lg, 2) = Me.Combobox2
           .Cells(lg, 3) = Me.TextBox1
           .Cells(lg, 6) = Me.TextBox2
           .Cells(lg, 9) = Me.Combox3
           .Cells(lg, 10) = Me.ComboCoV1
   End If
   End With
'Copie de la ligne sur la feuille
   With activesheet

      .Cells(8, 2) = Combobox1.Value

    End With

Application.ScreenUpdating = True
Unload Me



      ' Classement de la liste par ordre alphabétique : 

With Sheets("TEST").Range(" A2:T10000").Sort Key1:=Workbooks("Liste.xlsx").Sheets("TEST").Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom




Merci pour vos idées
 

Pierrot93

XLDnaute Barbatruc
Re : combobox dans userform : Optimisation d'un code

Bonjour,

oui, et le problème se situe où ? regarde peut être du coté des modules de classe... sinon essaye d'être un peu plus explicite, peut être en nous joingnant un tout petit fichier, pas plus de 3, 4 combo représentant bien le problème posé et le résultat attendu....

bonne journée
@+
 

Statistiques des forums

Discussions
312 304
Messages
2 087 069
Membres
103 453
dernier inscrit
Choupi