Bonjour,
J'ai créé un formulaire qui en même temps devrait créditer un achat avec une carte de crédit et en même temps attribuer la dépense au poste concerné.
Mais voilà, comme vous le voyez sur l'image, "Alimentation" devrait être dans le combobox du haut :

Voici le code de ce formulaire :
'Format date en nombre
Public Dat As Date
'Page d'accueil
Private Sub Accueil_Click()
Unload Me
Sheets("Accueil").Select
End Sub
'Page formulaires
Private Sub Formulaires_Click()
Unload Me
Données_Formulaires.Show
End Sub
'Appeler les comptes & les atégories
Private Sub UserForm_Initialize()
Me.ListBox1.RowSource = "Compte"
Me.ListBox2.RowSource = "Investissementscumulésdenis"
Me.ListBox3.RowSource = "Dettesolde"
Me.ListBox4.RowSource = "Surplusdéficite"
Me.catégorie.RowSource = "Sortie"
End Sub
'Appeler les sous-catégories
Private Sub catégorie_Change()
Me.souscat.RowSource = "Sortie" & Me.catégorie
End Sub
'Appeler les sous-catégories
Private Sub catégorie2_Change()
Me.souscat2.RowSource = "Sortie" & Me.catégorie2
End Sub
'Date
Private Sub txtdate_AfterUpdate()
Dat = Me.txtdate.Value
On Error GoTo Message
Me.txtdate = Format(CDate(Me.txtdate), "yyyy-mm-dd")
Exit Sub
Message:
MsgBox ("Vous avez entré le mauvais format de date !")
Me.txtdate = ""
End Sub
'Montant
Private Sub montant_AfterUpdate()
Me.montant = Replace(Me.montant, ".", ",")
Me.montant = Format(Me.montant, "currency")
End Sub
'Transfert d'un crédit dans un compte
Private Sub enregistrer_Click()
If Me.txtdate = "" Or Me.souscat.ListIndex < 0 Or Me.montant = "" Then
MsgBox ("Il manque des informations")
Else
'Contrôler si la base de données est vide oui ou non
If Sheets("Base de données").Range("d8") <> "" Then
Sheets("Base de données").ListObjects(1).ListRows.Add
End If
'Trouver la dernière ligne
dlt = Sheets("Base de données").Range("b100000").End(xlUp).Row
'Ajouter les infos
Sheets("Base de données").Range("c" & dlt) = txtdate
Sheets("Base de données").Range("d" & dlt) = "Crédit"
Sheets("Base de données").Range("e" & dlt) = CDbl(Me.montant)
Sheets("Base de données").Range("g" & dlt) = Me.catégorie
Sheets("Base de données").Range("i" & dlt) = Me.souscat
Sheets("Base de données").Range("k" & dlt) = Me.créancier
Sheets("Base de données").Range("p" & dlt) = Me.commentaire
'Vider le formulaire
Me.txtdate = ""
Me.montant = ""
Me.créancier = ""
Me.catégorie = ""
Me.souscat = ""
Me.créancier = ""
Me.commentaire = ""
'Ajouter les infos
Sheets("Base de données").Range("d" & dlt) = "Sortie"
Sheets("Base de données").Range("l" & dlt) = Me.catégorie2
Sheets("Base de données").Range("n" & dlt) = Me.souscat2
'Vider le formulaire
Me.catégorie2 = ""
Me.souscat2 = ""
'ThisWorkbook.RefreshAll
ThisWorkbook.Save
Me.ListBox1.RowSource = "Compte"
Me.ListBox2.RowSource = "Investissementscumulésdenis"
Me.ListBox3.RowSource = "Dettesolde"
Me.ListBox4.RowSource = "Surplusdéficite"
End If
End Sub
Une idée du problème ?
Merci