Effacer valeur avant ecriture et en annulant USERFORM

Bonjour à tous,

J'ai cherché partout pour résoudre mon problème et après avoir essayer plusieurs techniques, je n'y arrive toujours pas.

Voici mon problème :

J'aimerais que lorsque je click pour l'ouverture de mon Userform les valeurs à renseigner (dans l'onglet) s'efface et lorsque je click sur annuler toutes les données s'effacent.

Actuellement, je n'arrive qu'à effacer les données renseignées dans le Userform mais si vide rien ne s'efface.

Et avant l'ouverture, je n'arrive qu'à effacer les données du Userform.

Voici mes codes :

Option Explicit

Dim WS As Worksheet   'Variable pour un Objet Worksheet en PUBLIC pour tous les Controls de ce UserForm

Const T As String = "Saisie d'information"

Private Sub ComboBox2_Change()
[J12] = UserForm1.ComboBox2
End Sub

Private Sub CommandButton1_Click()

Dim x As Control
For Each x In rdv.Controls
If x.Value = True Then
Range("c12").Value = x.Caption
End If
Next
 Dim CTRL As Control

    'Boucle sur tous les contrôles
    For Each CTRL In Me.Controls
        'Vérifie qu'il s'agit d'un OptionButton
        If TypeOf CTRL Is MSForms.OptionButton Then
            'Véfifie si l'OptionButton fait partie d'un groupe 
             If CTRL.GroupName = "rdv" Then
                'Affiche le Caption de l'optionButton qui a la valeur True
                If CTRL.Value = True Then
                    MsgBox CTRL.Caption
                    'Sort de la boucle (Il ne peut y a voir qu'une
                    'réponse à True)
                    Exit For
                End If
            End If
        End If
    Next
    Unload UserForm1

End Sub

Private Sub CommandButton2_Click()

Me.ComboBox1.Value = ""
Me.OptionButton1.Value = ""
Me.TextBox1.Value = ""
Me.ComboBox2.Text = ""

Unload UserForm1

End
End Sub

Private Sub OptionButton1_Change()
[c12] = UserForm1.OptionButton1.Value

End Sub

Private Sub OptionButton2_Change()
[c12] = UserForm1.OptionButton2.Value

End Sub
Private Sub OptionButton3_Change()
[c12] = UserForm1.OptionButton3.Value
End Sub
Private Sub OptionButton4_Change()
[c12] = UserForm1.OptionButton4.Value

End Sub

Private Sub rdv_Click()
[c12] = UserForm1.rdv.Value
Dim CTRL As Control

    For Each CTRL In rdv.Controls
        CTRL.Enabled = Not CTRL.Enabled
    Next

End Sub

Private Sub TextBox1_Change()
[j10] = UserForm1.TextBox1.Value

End Sub

Private Sub UserForm_Initialize()
ComboBox1.RowSource = ("LISTING_MOIS")
ComboBox2.RowSource = ("LISTING_SEMAINE")
ComboBox1.Text = Format(Date, "mmmm-yyyy")

Set WS = ThisWorkbook.Sheets("FICHE RETOUR") 'On identifie l'objet pour la feuille de travail
'Pour éviter les fash d'écran pour le select ci dessous

Application.ScreenUpdating = True

End Sub
' A l'activation on démarre le focus sur la Première Combobox
Private Sub UserForm_Activate()
Me.ComboBox1.SetFocus

End Sub

Function Clear()

Range("c10").ClearContents
Range("c12").ClearContents
Range("j10").ClearContents
Range("j12").ClearContents

End Function

Private Sub ComboBox1_Change()
[c10] = UserForm1.ComboBox1
ComboBox1.Text = Format(ComboBox1.Text, "mmmm-yyyy")

End Sub

Private Sub UserForm_Click()

End Sub

Bonjour Mimi28 le forum

bon un petit fichier avec les explications dedans serait bien mieux que ton code de l'userform

Je pense qu'il y a beaucoup plus simple que ce que tu as fait

dans l'attente du fichier

a+

papou

Bonjour Papou

Alors voici mon fichier avec mon Userform.

Effectivement, je pense qu'il y a beaucoup plus simple mais étant totalement novice, j'ai récupéré toutes les infos dans plusieurs forums.

Je te remercie de m'aider.

22test.xlsm (35.00 Ko)

Re Bonjour Mimi28 le forum,

Bon alors quelque explications stp

quand tu ouvres ton userform tu veux que toutes les cellules de la feuill retour C10 C12 J10 J12 soient effacer c'est bien cela?

et aussi tu souhaites charger les comboboxs avec les liste s de al feuille2

et après avoir fait tes choix dans l'userform remplir la feuille 1 et fermer l'userform???

a te relire

a+

Papou

Re Bonjour Mimi28 le forum

bon pas de réponse alors j'ai fait comme je pense, si c'est pas cela tu le rediras

tu m'excuseras mais j'ai tout viré ce que tu avais fait, mais maintenant cela marche comme tu le souhaites du moins je pense

a+

papou

28mimi-28-v1.xlsm (34.58 Ko)

Re Mimi28 le forum

j'avais fait une petite erreur dans le contrôle des remplissages, voilà réparé

a+

papou

70mimi-28-v2.xlsm (34.80 Ko)

Bonjour Mimi28 le forum

Bah alors mimi tu n'as même pas le dernier post et tu n'as pas regardé la version V2

a+

Papou

Bonjour

Je suis vraiment désolée de ne pas avoir répondu plus tot mais je viens de voir ton post.

C'est vraiment super ton boulot et c'est exactement ceci que je souhaitais.

Par contre, j'aimerais comprendre comment tu as fais pour pouvoir le reproduire par la suite.

Pourrais-tu m'envoyer tes explications afin que je reproduise plus mes erreurs ?

Quel est la différence entre list index et RowSource ?

Car dans mon fichier initial, les données sont recherchées dans mes gestionnaires de noms (la colonne n'a pas uniquement ces données).

Donc si je renseigne :

aa = .Range("B3:B" & .Range("B" & Rows.Count).End(xlUp).Row)

la requete cherchera dans toute la colonne ?

Et qu'est ce que Option Base1, je n'ai pas trouvé de donnée ??

Alors la je vais sembler vraiment trop novice mais qu'est-ce que i& et fin& (comment l'identifié) ?????

Je te remercie beaucoup pour ton aide.

mimi28

Bonjour Mimi28 le forum

que de questions !!!

pourquoi pas le rowsource? car le rowsource est figée avec un remplissage comme je t'ai fait si ta liste s'allonge automatiquement tu auras tout dans ta combo ou listbox je ne sais plus ce que j'ai fait pour toi

Option Base 1 c'est pour travailler avec des tableaux mais que la première ligne ne soit pas la ligne 0 mais la ligne 1 et pareil pour les colonnes

i& et fin& alors cela c'est la déclaration des variables, i& signifie i as long et fin& signifie fin as long

Noublie pas de cocher le V vert à coté d'Editer pour signifier Résolu, merci d'avance

a+

Papou

Bonjour,

Merci pour tes explications.

A bientôt peut-être... pour d'autres questions ..

Rechercher des sujets similaires à "effacer valeur ecriture annulant userform"