Bonjour,
Je dois réaliser une étude de fréquentation. J'ai préparé un formulaire que j'ai réussi à coder, à l'exception de la récupération des informations des comboBox. D'habitude j'utilise des listes déroulantes et c'est beaucoup plus simple.
Lorsque je valide (pour l'enregistrement dans l'onglet synthèse), les colonnes A à C se complètent correctement mais à partir de la colonne D jusqu'à E, c'est toujours la 1ère ligne des comboBox qui est sélectionnée. Je joins l'intégralité du code ainsi que le formulaire.
Il doit très certainement falloir rajouter une information aux lignes ci-dessous :
Sheets("Synthèse").Cells(Ligne, 4) = ListBox_categorie.List
Sheets("Synthèse").Cells(Ligne, 5) = ListBox_marche.List
Sheets("Synthèse").Cells(Ligne, 6) = ListBox_motif.List
Merci de l'aide qui pourra m'être apportée afin de résoudre ce dysfonctionnement.
Cordialement
Je dois réaliser une étude de fréquentation. J'ai préparé un formulaire que j'ai réussi à coder, à l'exception de la récupération des informations des comboBox. D'habitude j'utilise des listes déroulantes et c'est beaucoup plus simple.
Lorsque je valide (pour l'enregistrement dans l'onglet synthèse), les colonnes A à C se complètent correctement mais à partir de la colonne D jusqu'à E, c'est toujours la 1ère ligne des comboBox qui est sélectionnée. Je joins l'intégralité du code ainsi que le formulaire.
Il doit très certainement falloir rajouter une information aux lignes ci-dessous :
Sheets("Synthèse").Cells(Ligne, 4) = ListBox_categorie.List
Sheets("Synthèse").Cells(Ligne, 5) = ListBox_marche.List
Sheets("Synthèse").Cells(Ligne, 6) = ListBox_motif.List
VB:
Private Sub UserForm_Initialize()
' Date formulaire
'TextDate.Value = DateValue(Now)
TextDate.Value = Format(Now(), "dd mmm yyyy hh:mm:ss am/pm")
' Numéro séquence
Me.TextBoxNum.Value = Format((Application.WorksheetFunction.Max(Worksheets("Synthèse").Columns(1))) + 1, "000")
' Ajout de la liste des agences
liste_agence.AddItem "1"
liste_agence.AddItem "2"
liste_agence.AddItem "3"
liste_agence.AddItem "4"
liste_agence.AddItem "5"
liste_agence.AddItem "6"
liste_agence.AddItem "7"
liste_agence.AddItem "8"
liste_agence.AddItem "9"
liste_agence.AddItem "10"
' Ajout de la liste de la Catégorie
ListBox_categorie.AddItem "Client"
ListBox_categorie.AddItem "N'est pas client"
ListBox_categorie.AddItem "Prospect"
ListBox_categorie.AddItem "Autres"
' Ajout de la liste du Marché
ListBox_marche.AddItem "A"
ListBox_marche.AddItem "B"
ListBox_marche.AddItem "C"
ListBox_marche.AddItem "D"
ListBox_marche.AddItem "E"
ListBox_marche.AddItem "Autres"
' Ajout de la liste du Motif
ListBox_motif.AddItem "Remise"
ListBox_motif.AddItem "Retrait"
ListBox_motif.AddItem "RDV"
ListBox_motif.AddItem "Sollicite une information"
ListBox_motif.AddItem "Prise de RDV"
ListBox_motif.AddItem "Demande d'assistance"
ListBox_motif.AddItem "Effectuer une réclamation"
ListBox_motif.AddItem "Autres"
End Sub
Private Sub ajouter_Click()
Dim Synthèse As String
Sheets("Synthèse").Activate
ActiveSheet.Visible = True
ActiveSheet.Select
Dim Response As Byte
Dim Ligne As Integer: Ligne = 2
While Sheets("Synthèse").Cells(Ligne, 3).Value <> ""
Ligne = Ligne + 1
Wend
Sheets("Synthèse").Cells(Ligne, 1) = CDbl(TextBoxNum)
Sheets("Synthèse").Cells(Ligne, 2) = CDate(TextDate)
Sheets("Synthèse").Cells(Ligne, 3) = liste_agence
Sheets("Synthèse").Cells(Ligne, 4) = ListBox_categorie.List
Sheets("Synthèse").Cells(Ligne, 5) = ListBox_marche.List
Sheets("Synthèse").Cells(Ligne, 6) = ListBox_motif.List
While Sheets("Synthèse").Cells(Ligne, 2).Value <> ""
Ligne = Ligne + 1
Wend
' Vide les données puis affiche l'UserForm
Unload Me
Application.DisplayAlerts = False
ActiveWorkbook.Save
Application.DisplayAlerts = True
UserForm1.Show
Sheets("Menu").Select
End Sub
Private Sub liste_agence_Change()
Dim I As Integer
'Boucle pour ajouter les 10 agences à la liste déroulante
For I = 1 To 10
liste_agence.AddItem Cells(1, I)
Next
End Sub
Private Sub quitter_Click()
Unload Me
End Sub
Merci de l'aide qui pourra m'être apportée afin de résoudre ce dysfonctionnement.
Cordialement