A voir également:
- Excel 2007 vba test si valeur saisie textbox
- Test performance pc - Guide
- Save as pdf office 2007 - Télécharger - Bureautique
- Si ou excel - Guide
- Test disque dur - Télécharger - Informations & Diagnostic
- Liste déroulante excel - Guide
6 réponses
Une solution (pas franchement miracle mais bon...) :
1 - Créé une checkbox, et rend la invisible (ou place là à un endroit qui t'arrange).
2 - Sur modification de chacun de tes 50 champs, effectuer la même procédure qui coche la checkbox.
3 - Sur modification de ta combobox, vérifie que la checkbox est cochée. Si c'est le cas, met un message d'avertissement, puis décoche la.
On peut adapater cette méthode en remplissant une cellule plutôt qu'en utilisant une checkbox.
1 - Créé une checkbox, et rend la invisible (ou place là à un endroit qui t'arrange).
2 - Sur modification de chacun de tes 50 champs, effectuer la même procédure qui coche la checkbox.
3 - Sur modification de ta combobox, vérifie que la checkbox est cochée. Si c'est le cas, met un message d'avertissement, puis décoche la.
On peut adapater cette méthode en remplissant une cellule plutôt qu'en utilisant une checkbox.
J'ai fais une classe pour tester si une de mes 50 textbox change alors je coche la checkbox
Voila mon code :
En inscrivant des valeurs dans mes textbox, la checkbox ne se coche pas.
Pouvez vous m'aider?
Merci
Voila mon code :
Private Sub TxtBox_Change() CheckBox1 = True End Sub
En inscrivant des valeurs dans mes textbox, la checkbox ne se coche pas.
Pouvez vous m'aider?
Merci
C'est bon j'ai réussi à cocher ma checkbox par contre maintenant à la place de rendre invisible la checkbox j'aimerais utiliser un booléan.
Voici le code :
La variable txt se met bien à 1 mais quand la combobox change la msgbox n'apparaît pas.
Si je remplace :
par
Le msgbox apparaît.
Où est le problème.
Merci
Voici le code :
Public txt As Boolean Private Sub TxtBox_Change() txt = True End Sub Private Sub ComboBox1_Change() If txt = True Then Select Case MsgBox("Enregistrer les modifications", vbYesNo) Case vbYes Case vbNo End Select End If End Sub
La variable txt se met bien à 1 mais quand la combobox change la msgbox n'apparaît pas.
Si je remplace :
If txt = True Then
par
If CheckBox1.Value = True Then
Le msgbox apparaît.
Où est le problème.
Merci
Ben ça me parait pas mal. Je ne comprend pas ce qui cloche.
J'ai testé de mon côté avec la variable publique, et ça a l'air de fonctionner.
Essaye de mettre un point d'arrêt sur le "If txt = True Then", pour observer sa valeur et son comportement.
Par contre faut penser à repasser la variable à false dans le code de ComboBox1_Change.
J'ai testé de mon côté avec la variable publique, et ça a l'air de fonctionner.
Essaye de mettre un point d'arrêt sur le "If txt = True Then", pour observer sa valeur et son comportement.
Par contre faut penser à repasser la variable à false dans le code de ComboBox1_Change.
J'ai testé avec les points d'arrêt.
Quand je met une valeur dans une des textbox la variable txt est égale à vide.
J'ai déclaré ma variable txt dans le module de classe. Faut-il la déclaré autre part?
Quand je met une valeur dans une des textbox la variable txt est égale à vide.
Private Sub TxtBox_Change() txt = True End Sub
J'ai déclaré ma variable txt dans le module de classe. Faut-il la déclaré autre part?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai essayé juste avec une textbox et sa marche bien.
Je pense avoir trouver le problème, j'ai fais un module de classe pour ne pas être obligé de répéter le code pour chaque textbox et la variable public ne doit pas fonctionner dans les modules de classe.
Comment remédier à cela?
Merci.
Je pense avoir trouver le problème, j'ai fais un module de classe pour ne pas être obligé de répéter le code pour chaque textbox et la variable public ne doit pas fonctionner dans les modules de classe.
Comment remédier à cela?
Merci.
pour faire simple tu peux utiliser une variable de type boolean
que tu déclares public au niveau du module
public Valide_Profil as Boolean
tu l'initialise sur false dans le module
puis
dans le botoun enregistrer
tu le passe à true
quand tu choisis ton profil dans le combobox j'imagine
tu le contrôles si true....
if not Valide_Profil then
s= msgbox(.... non sauvegardé !!! ",vbokonly,"Alerte")
Exit sub ' tu quittes car non sauvegarde
endif
Valide_Profil =false
tu le remets avant de quitter Valide_Profil =false
que tu déclares public au niveau du module
public Valide_Profil as Boolean
tu l'initialise sur false dans le module
puis
dans le botoun enregistrer
tu le passe à true
quand tu choisis ton profil dans le combobox j'imagine
tu le contrôles si true....
if not Valide_Profil then
s= msgbox(.... non sauvegardé !!! ",vbokonly,"Alerte")
Exit sub ' tu quittes car non sauvegarde
endif
Valide_Profil =false
tu le remets avant de quitter Valide_Profil =false