J'ai créé un formulaire de saisie directement sur une feuille de calcul Excel nommée "Saisie 1" et non à l'aide d'un USF pour des raisons de commodités. J'y ai intégré de nombreux Textbox pour effectuer la saisie. Je souhaiterais savoir comment effacer tous les Textbox en même temps (pour éviter de les nommer 1 par 1). J'ai trouvé diverses réponses que je n'ai pas su exploiter.
Je voudrais savoir également si il est possible de récupérer le nom d'un Textbox (celui que j'ai attribué par l'intermédiaire de ses propriétés). En effet j'aimerais créer une macro unique qui serait utilisée pour différents Testbox.
Je vous remercie par avance de votre aide et je vous souhaite un bon Dimanche
Re,
Voila le code qui te permet d'effacer le contenu de tous les textbox sur la feuille active.
Code:
Sub RAZ()
Dim oObjet As Object
' Boucle sur tous les objects
For Each oObjet In ActiveSheet.OLEObjects
' TextBox
If TypeOf oObjet.Object Is msforms.TextBox Then
oObjet.Object.Text = ""
End If
Next oObjet
End Sub
Private Sub Clear_TextBox()
Dim ctl As OLEObject
For Each ctl In Me.OLEObjects
If TypeName(ctl.Object) = "TextBox" Then ctl.Object.Text = ""
Next
End Sub
Sinon donner un fichier exemple avec les textBox et explications CLAIRES.
Merci beaucoup à Kingfadhel et Hasco pour leur aide car ça fonctionne au poil. Sans abuser auriez vous une réponse à ma deuxième question.
Encore merci
Pour ta deuxième question, les possibilités et réponses peuvent être multiples et variées suivant ce que tu veux faire. Mais comme tu résistes à nous donner un fichier exemple, je m'arrêterai là.
Je suis désolé mais je ne fais pas de la résistance. Je ne peux pas envoyer le fichier tel quel car il me sert pour le travail et il y a bien-sur des données confidentielles. Je vais l'épurer au maximum et tacher de l'envoyer dans la journée.
Merci de votre compréhension.