Aide code vba sous excel pour case à cocher !
benbeto78
Messages postés
372
Statut
Membre
-
benbeto78 Messages postés 372 Statut Membre -
benbeto78 Messages postés 372 Statut Membre -
Bonjour,
voila je veux me faire une base de données de tout mes films avec excel mais le hic c'est que j'arrive pas à faire ce que j'aimerais faire avec des cases à cocher.
En gros, je vous montre 2 screens:
La première c'est la forme qu'a mon tableau pour le moment !
http://ups.imagup.com/06/1260940208.jpg
La seconde c'est pour vous montrer que j'ai créer un formulaire (en haut à gauche) avec une macro pour que lorsque je clique dessus cette fenêtre s'affiche:
http://ups.imagup.com/06/1260940285.jpg
Ce que j'aimerais c'est que via le formulaire en cochant soit oui soit non, cela soit indiquer dans la colonne "Prêté (Oui/Non)"
Donc si y a des personnes qui s'y connaissent pas mal je suis tout ouï ^^ !
Merci !
voila je veux me faire une base de données de tout mes films avec excel mais le hic c'est que j'arrive pas à faire ce que j'aimerais faire avec des cases à cocher.
En gros, je vous montre 2 screens:
La première c'est la forme qu'a mon tableau pour le moment !
http://ups.imagup.com/06/1260940208.jpg
La seconde c'est pour vous montrer que j'ai créer un formulaire (en haut à gauche) avec une macro pour que lorsque je clique dessus cette fenêtre s'affiche:
http://ups.imagup.com/06/1260940285.jpg
Ce que j'aimerais c'est que via le formulaire en cochant soit oui soit non, cela soit indiquer dans la colonne "Prêté (Oui/Non)"
Donc si y a des personnes qui s'y connaissent pas mal je suis tout ouï ^^ !
Merci !
A voir également:
- Aide code vba sous excel pour case à cocher !
- Code ascii - Guide
- Liste déroulante excel - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Word et excel gratuit - Guide
- Code puk bloqué - Guide
14 réponses
Salut,
colle nous ton code VBA de ton formulaire pour que l'on puisse voir le nom des tes champs et de tes variables.
Merci
colle nous ton code VBA de ton formulaire pour que l'on puisse voir le nom des tes champs et de tes variables.
Merci
Salut,
Au lieu des cases à cocher j'ai mit des boutons radios Option1 pour Oui et Option2 pour Non
tient essaie ceci:
Bonne journée
Au lieu des cases à cocher j'ai mit des boutons radios Option1 pour Oui et Option2 pour Non
tient essaie ceci:
Private Sub cmdajouter_Click()
Dim numlignevide As Integer
Worksheets("Prêt BluRay").Activate
numlignevide = ActiveSheet.Columns(1).Find("").Row
If txtfilm.Text = "" Then
MsgBox "Veuillez remplir les champs", vbCritical, "Champs manquants"
txtfilm.SetFocus
Else
ActiveSheet.Cells(numlignevide, 1) = txtfilm.Text
ActiveSheet.Cells(numlignevide, 3) = txtpret.Text
If Option1 = True Then
ActiveSheet.Cells(numlignevide, 2) = "oui"
ElseIf Option2 = True Then
ActiveSheet.Cells(numlignevide, 2) = "Non"
End If
txt.film.Text = ""
txtpret.Text = ""
Option1 = ""
Option2 = ""
txtfilm.SetFocus
End If
End Sub
Bonne journée
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Slt !
Je viens de tester ton code VBA et ça fontionne niquel merci beaucoup.
Y a juste un petit truc je sais pas si on peut le changer mais lorsque je rentre dans le formulaire le nom de mon film si je l'ai prêté "oui" ou "non" et que je valide, les deux bouton options sont rempli et grisé.
C'est pas gênant en soit parce qu'ils sont grisé mais il suffit que je clique sur l'un d'entre eux quand je rentre un nouveau film pour qu'il prenne en compte le choix désiré mais bon.
A et puis j'y pense, quand je valide, le setfocus se remet sur "nom du film" donc ça c'est parfait mais j'aimerai aussi que le choix "non" soit sélectionné par défaut.
Si tu as une solution ça serait cool.
Merci
Je viens de tester ton code VBA et ça fontionne niquel merci beaucoup.
Y a juste un petit truc je sais pas si on peut le changer mais lorsque je rentre dans le formulaire le nom de mon film si je l'ai prêté "oui" ou "non" et que je valide, les deux bouton options sont rempli et grisé.
C'est pas gênant en soit parce qu'ils sont grisé mais il suffit que je clique sur l'un d'entre eux quand je rentre un nouveau film pour qu'il prenne en compte le choix désiré mais bon.
A et puis j'y pense, quand je valide, le setfocus se remet sur "nom du film" donc ça c'est parfait mais j'aimerai aussi que le choix "non" soit sélectionné par défaut.
Si tu as une solution ça serait cool.
Merci
Salut,
je ne suis vraiment pas un expert en VBA, je suis novice et j'essaie d'apprendre ;)
J'ai l'impression que je n'ai pas mit mon End If à la bonne place
je ne suis vraiment pas un expert en VBA, je suis novice et j'essaie d'apprendre ;)
J'ai l'impression que je n'ai pas mit mon End If à la bonne place
Private Sub cmdajouter_Click()
Dim numlignevide As Integer
Worksheets("Prêt BluRay").Activate
numlignevide = ActiveSheet.Columns(1).Find("").Row
If txtfilm.Text = "" Then
MsgBox "Veuillez remplir les champs", vbCritical, "Champs manquants"
txtfilm.SetFocus
Else
ActiveSheet.Cells(numlignevide, 1) = txtfilm.Text
ActiveSheet.Cells(numlignevide, 3) = txtpret.Text
If Option1 = True Then
ActiveSheet.Cells(numlignevide, 2) = "oui"
ElseIf Option2 = True Then
ActiveSheet.Cells(numlignevide, 2) = "Non"
txt.film.Text = ""
txtpret.Text = ""
Option1 = ""
Option2 = ""
txtfilm.SetFocus
End If
End If
End Sub
Désolé du double post mais je fais des tests depuis tout à l'heure et je remarque que lorsque je valide mon formulaire avec "oui" les champs ne s'efface pas alors qu'avec "non" ça efface. C'est bizarre.
Ha non c'est bon j'édite mon message, en fait premier End if faut pas le mettre à la fin mais avant d'effacer les champs.
La il me reste plus qu'a trouver comment faire pour que le choix "non" soit sélectionné par défaut lorsque j'ouvre le formulaire.
Ha non c'est bon j'édite mon message, en fait premier End if faut pas le mettre à la fin mais avant d'effacer les champs.
La il me reste plus qu'a trouver comment faire pour que le choix "non" soit sélectionné par défaut lorsque j'ouvre le formulaire.
Arf je viens de tester ça fonctionne pas ! j'ai bien mis le nom du userform pourtant regarde :
http://ups.imagup.com/06/1261041168.jpg
Surement que je le met pas au bon endroit (je l'ai mis tout en bas la commande)
Bonne soirée et merci encore pour l'aide !
http://ups.imagup.com/06/1261041168.jpg
Surement que je le met pas au bon endroit (je l'ai mis tout en bas la commande)
Bonne soirée et merci encore pour l'aide !
Comme ça ? :
http://ups.imagup.com/06/1261042811.jpg
Parce que ça ne fonctionne pas ! faut pas l'introduire dans le code de base ?
C'est à dire dans celui-la :
Private Sub cmdajouter_Click()
Dim numlignevide As Integer
'activation de la feuille "Prêt BluRay"
Worksheets("Prêt BluRay").Activate
'trouve la dernière ligne vide du tableau et enregistre le numéro de la ligne dans la variable numlignevide
numlignevide = ActiveSheet.Columns(1).Find("").Row
'vérifie que les champs obligatoires sont correctement remplis
If txtfilm.Text = "" Then
MsgBox "Rentrez le nom d'un film", vbCritical, "Veuillez rentrer le nom d'un film SVP !"
txtfilm.SetFocus
Else
'enregistre les données
ActiveSheet.Cells(numlignevide, 1) = txtfilm.Text
ActiveSheet.Cells(numlignevide, 3) = txtpret.Text
If option1 = True Then
ActiveSheet.Cells(numlignevide, 2) = "Oui"
ElseIf option2 = True Then
ActiveSheet.Cells(numlignevide, 2) = "Non"
End If
'efface le formulaire et replace le curseur sur txtfilm
txtfilm.Text = ""
txtpret.Text = ""
option1 = ""
option2 = ""
txtfilm.SetFocus
End If
End Sub
Je sais pas en fait ! Va falloir que je me mette à fond dans les bouquins ! : )
http://ups.imagup.com/06/1261042811.jpg
Parce que ça ne fonctionne pas ! faut pas l'introduire dans le code de base ?
C'est à dire dans celui-la :
Private Sub cmdajouter_Click()
Dim numlignevide As Integer
'activation de la feuille "Prêt BluRay"
Worksheets("Prêt BluRay").Activate
'trouve la dernière ligne vide du tableau et enregistre le numéro de la ligne dans la variable numlignevide
numlignevide = ActiveSheet.Columns(1).Find("").Row
'vérifie que les champs obligatoires sont correctement remplis
If txtfilm.Text = "" Then
MsgBox "Rentrez le nom d'un film", vbCritical, "Veuillez rentrer le nom d'un film SVP !"
txtfilm.SetFocus
Else
'enregistre les données
ActiveSheet.Cells(numlignevide, 1) = txtfilm.Text
ActiveSheet.Cells(numlignevide, 3) = txtpret.Text
If option1 = True Then
ActiveSheet.Cells(numlignevide, 2) = "Oui"
ElseIf option2 = True Then
ActiveSheet.Cells(numlignevide, 2) = "Non"
End If
'efface le formulaire et replace le curseur sur txtfilm
txtfilm.Text = ""
txtpret.Text = ""
option1 = ""
option2 = ""
txtfilm.SetFocus
End If
End Sub
Je sais pas en fait ! Va falloir que je me mette à fond dans les bouquins ! : )
Je viens de réessayer mais j'ai un message d'erreur :
http://ups.imagup.com/06/1261043564.jpg
Faut peut-être écrire autre chose dans thisworkbook ? et d'ailleurs pourquoi cette commande dans thisworkbook ?
http://ups.imagup.com/06/1261043564.jpg
Faut peut-être écrire autre chose dans thisworkbook ? et d'ailleurs pourquoi cette commande dans thisworkbook ?
ah ben oui lol
Private Sub UserForm_Activate() 'Attention UserForm doit être remplacer par le nom de ton userform UserForm.option2.Value = True End Sub
lol ! Alors j'ai fait la modification mais la y a une fenêtre "Macro" qui s'affiche je veux pas faire de bêtise mais il faut choisir une macro dans la liste ou en créer une nouvelle ?
le lien :
http://ups.imagup.com/06/1261044738.jpg
le lien :
http://ups.imagup.com/06/1261044738.jpg
Salut :)
tient je t'ai fait un petit exemple
http://www.cijoint.fr/cjlink.php?file=cj200912/cijSD59Gac.xls
À la prochaine
EDIT: faudrait changer l'ordre des commandes
donc mettre
Au lieu de:
On va l'avoir lollll
tient je t'ai fait un petit exemple
http://www.cijoint.fr/cjlink.php?file=cj200912/cijSD59Gac.xls
À la prochaine
EDIT: faudrait changer l'ordre des commandes
donc mettre
Sub CommandButton1_Click() UserForm.option2.Value = True UserForm.Show End Sub
Au lieu de:
Sub CommandButton1_Click() UserForm.Show UserForm.option2.Value = True End Sub
On va l'avoir lollll
Salut !
Merci ça m'a bien aidé ton fichier, le truc c'est le bouton "Non" était activé lors de l'ouverture du formulaire mais dès que je faisais "Ajouter" ça refaisait comme au début !
Mais j'ai trouvé comment faire en fait c'est tout bête, dans le code de mon Usrform j'ai juste modifié la valeur de option2 :
'efface le formulaire et replace le curseur sur txtfilm
txtfilm.Text = ""
txtpret.Text = ""
option1 = ""
option2 = True
txtfilm.SetFocus
Au lieu de mettre des "" (donc vide) j'ai simplement mis valeur True est ça fonctionne ! Ouf ^^
C'est cool en tout cas ça me fait bosser je me suis arracher les cheveux depuis hier mais grâce à toi j'ai bien avancer : )
Maintenant je vais passer à un autre problème c'est pas du VBA mais c'est tout aussi prise de tête ^^ !
Je voudrais mettre une image en arrière plan (derrière les cellules) mais dans une plage donnée (c'est à dire par exemple uniquement de la cellule A3 x D3 à A50 x D50
Et petit truc supplémentaire, je voudrais que cette image soit figée (un peut comme des lignes que l'on fige pour qu'elle soit toujours visible même en déroulant la page vers le bas.
Voila mon prochain objectif lol !
Je te file le screen de mon tableau que je peaufine si t'as des idées à me donner :
http://ups.imagup.com/06/1261086189.jpg
Merci !
Merci ça m'a bien aidé ton fichier, le truc c'est le bouton "Non" était activé lors de l'ouverture du formulaire mais dès que je faisais "Ajouter" ça refaisait comme au début !
Mais j'ai trouvé comment faire en fait c'est tout bête, dans le code de mon Usrform j'ai juste modifié la valeur de option2 :
'efface le formulaire et replace le curseur sur txtfilm
txtfilm.Text = ""
txtpret.Text = ""
option1 = ""
option2 = True
txtfilm.SetFocus
Au lieu de mettre des "" (donc vide) j'ai simplement mis valeur True est ça fonctionne ! Ouf ^^
C'est cool en tout cas ça me fait bosser je me suis arracher les cheveux depuis hier mais grâce à toi j'ai bien avancer : )
Maintenant je vais passer à un autre problème c'est pas du VBA mais c'est tout aussi prise de tête ^^ !
Je voudrais mettre une image en arrière plan (derrière les cellules) mais dans une plage donnée (c'est à dire par exemple uniquement de la cellule A3 x D3 à A50 x D50
Et petit truc supplémentaire, je voudrais que cette image soit figée (un peut comme des lignes que l'on fige pour qu'elle soit toujours visible même en déroulant la page vers le bas.
Voila mon prochain objectif lol !
Je te file le screen de mon tableau que je peaufine si t'as des idées à me donner :
http://ups.imagup.com/06/1261086189.jpg
Merci !