Bonjour à tous, je travaille sur une macro depuis le matin, et même ChatGPT n'a pu m'aider.
J'ai sur mon formulaire 14 textbox et 2 combobox qui me servent à renseigner les données et informations des salariés.
Nous avons 10 salariés dans la boite et donc je dois insérer leur données 10 fois dans la listbox avant de tout sauvegarder
dans la feuille correspondante.
Ne pouvant y arriver avec la méthode AddItem, j'ai essayé la méthode List sans plus de succès. Voici mon code, Malheureusement
il ne marche pas, j'ai le message "Erreur d'exécution 381" impossible de définir la propriété list.
Entre temps j'ai eu aussi à essayer le code ci-dessous qui m'insère bien les 16 colonnes, mais malheureusement l'insertion à la suite ne marche pas;
A chaque foi la listbox se vide pour insérer une nouvelle ligne de 16 colonnes à la fois
J'ai sur mon formulaire 14 textbox et 2 combobox qui me servent à renseigner les données et informations des salariés.
Nous avons 10 salariés dans la boite et donc je dois insérer leur données 10 fois dans la listbox avant de tout sauvegarder
dans la feuille correspondante.
Ne pouvant y arriver avec la méthode AddItem, j'ai essayé la méthode List sans plus de succès. Voici mon code, Malheureusement
il ne marche pas, j'ai le message "Erreur d'exécution 381" impossible de définir la propriété list.
VB:
Dim i As Integer
Liste_Données.ColumnCount = 16
For i = 1 To Total
' Récupérer le numéro de ligne à insérer
Dim Ligne As Integer
Ligne = Liste_Données.ListCount
' Insérer les données des TextBox dans les colonnes correspondantes
Liste_Données.List(Ligne, 0) = Me.Txt_Période1.Value
Liste_Données.List(Ligne, 1) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 2) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 3) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 4) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 5) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 6) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 7) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 8) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 9) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 10) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 11) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 12) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 13) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 14) = Me.Txt_Période2.Value
Liste_Données.List(Ligne, 15) = Me.Txt_Période2.Value
' Ajoutez ici les valeurs pour les autres TextBox
' Incrémenter le numéro de ligne
Liste_Données.AddItem
Next i
Entre temps j'ai eu aussi à essayer le code ci-dessous qui m'insère bien les 16 colonnes, mais malheureusement l'insertion à la suite ne marche pas;
A chaque foi la listbox se vide pour insérer une nouvelle ligne de 16 colonnes à la fois
Quelqu'un pourrait m'aider.Dim i As Integer
Dim Total As Integer
Dim Données() As Variant
' Spécifiez ici le nombre total de fois que vous souhaitez insérer les données
Total = 1
' Définir la taille du tableau de données
ReDim Données(1 To Total, 1 To 16)
' Boucle pour récupérer les données des TextBox et ComboBox
For i = 1 To Total
' Insérer les données dans le tableau
Données(i, 1) = Me.Txt_Période1.Value
Données(i, 2) = Me.Txt_Période2.Value
Données(i, 3) = Me.Cbx_Type.Value
Données(i, 4) = Me.Cbx_Salarié.Value
Données(i, 5) = Me.Txt_Avance.Value
Données(i, 6) = Me.Txt_Opposition.Value
Données(i, 7) = Me.Txt_Retenues.Value
Données(i, 8) = Me.Txt_Rappel.Value
Données(i, 9) = Me.Txt_Base.Value
Données(i, 10) = Me.Txt_Fonction.Value
Données(i, 11) = Me.Txt_Transport.Value
Données(i, 12) = Me.Txt_AutresImp.Value
Données(i, 13) = Me.Txt_Caisse.Value
Données(i, 14) = Me.Txt_Assurance.Value
Données(i, 15) = Me.Txt_AutresNonImp.Value
Données(i, 16) = Me.Txt_Sursalaire.Value
Next i