VBA Excel - Format TextBox
bernardamora
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
gbinforme Messages postés 14946 Date d'inscription Statut Contributeur Dernière intervention -
gbinforme Messages postés 14946 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Je suis en train de créer un petit programme sous Excel avec VBA et j'ai quelques questions :
1) - Un UserForm contient un TextBox pour saisir une date; je souhaiterai que lorsque l'on souhaite saisir la date, une boîte s'ouvre avec un calendrier où l'on peut sélectionner la date (exemple sur le site de la SNCF lorsqu'on veut saisir une date de départ...). Si ce n'est pas possible, formater le TextBox de la façon suivante 19/01/2007.
2) - Formater le TextBox pour de la saisie de Montant en €.
Merci d'avance de votre aide.
BA.
Je suis en train de créer un petit programme sous Excel avec VBA et j'ai quelques questions :
1) - Un UserForm contient un TextBox pour saisir une date; je souhaiterai que lorsque l'on souhaite saisir la date, une boîte s'ouvre avec un calendrier où l'on peut sélectionner la date (exemple sur le site de la SNCF lorsqu'on veut saisir une date de départ...). Si ce n'est pas possible, formater le TextBox de la façon suivante 19/01/2007.
2) - Formater le TextBox pour de la saisie de Montant en €.
Merci d'avance de votre aide.
BA.
A voir également:
- VBA Excel - Format TextBox
- Format epub - Guide
- Format factory - Télécharger - Conversion & Codecs
- Liste déroulante excel - Guide
- Hp usb disk storage format tool - Télécharger - Stockage
- Format apfs - Guide
7 réponses
bonjour
je souhaiterai que lorsque l'on souhaite saisir la date, une boîte s'ouvre avec un calendrier
Pour obtenir un calendrier, tu as plusieurs possibilités et entre autres, dans le menu outils / contrôles supplémentaires :
- selectionner "Microsoft MonthView Control 6.0"
- sélectionner "Microsoft Date and Time Picker Control 6.0"
selon tes goûts esthétiques et fonctionnels.
Pour récupérer la date il est préférable d'utiliser Cdate(tadate) après avoir testé isdate(tadate)
Pour formater le TextBox pour de la saisie de Montant en €. tu peux mettre le format "# ##0,00 €" mais il ne se met dans le textbox que si la zone est renseignée.
je souhaiterai que lorsque l'on souhaite saisir la date, une boîte s'ouvre avec un calendrier
Pour obtenir un calendrier, tu as plusieurs possibilités et entre autres, dans le menu outils / contrôles supplémentaires :
- selectionner "Microsoft MonthView Control 6.0"
- sélectionner "Microsoft Date and Time Picker Control 6.0"
selon tes goûts esthétiques et fonctionnels.
Pour récupérer la date il est préférable d'utiliser Cdate(tadate) après avoir testé isdate(tadate)
Pour formater le TextBox pour de la saisie de Montant en €. tu peux mettre le format "# ##0,00 €" mais il ne se met dans le textbox que si la zone est renseignée.
bonjour
Ton code ne fonctionne pas tout à fait correctement car il n'insère pas un ligne mais une cellule et écrase les cellules gérées par offset.
Personnellement j'utilise une technique qui me paraît plus sûre et je te la propose. La sélection des cellules, même si elle est suggérée par l'enregistreur, ne sert qu'à alourdir le code et l'exécution.
J'ai supposé que ta date était dans textbox3 car "tadate" était simplement pour te permettre de mettre ton appellation propre.
Ton code ne fonctionne pas tout à fait correctement car il n'insère pas un ligne mais une cellule et écrase les cellules gérées par offset.
Personnellement j'utilise une technique qui me paraît plus sûre et je te la propose. La sélection des cellules, même si elle est suggérée par l'enregistreur, ne sert qu'à alourdir le code et l'exécution.
J'ai supposé que ta date était dans textbox3 car "tadate" était simplement pour te permettre de mettre ton appellation propre.
Private Sub CommandButton1_Click() Dim lig As Double If Not IsDate(TextBox3.Value) Then ' tu peux mettre un message d'erreur ' MsgBox "date incorrecte" TextBox3.SelStart = 0 TextBox3.SelLength = Len(TextBox3.Value) TextBox3.SetFocus Exit Sub End If If Not IsNumeric(TextBox4.Value) Then ' tu peux mettre un message d'erreur ' MsgBox "montant incorrect" TextBox4.SelStart = 0 TextBox4.SelLength = Len(TextBox3.Value) TextBox4.SetFocus Exit Sub End If lig = Sheets("Facture").Cells.SpecialCells(xlCellTypeLastCell).Row + 1 Sheets("Facture").Cells(lig, 2).Value = ComboBox1.Value Sheets("Facture").Cells(lig, 3).Value = CDate(TextBox3.Value) Sheets("Facture").Cells(lig, 4).NumberFormat = "# ##0,00 €" Sheets("Facture").Cells(lig, 4).Value = TextBox4.Value Sheets("Facture").Cells(lig, 5).Value = CheckBox1 ' tu vas avoir VRAI ou FAUX End Sub
Bonjour,
First, merci pour cette rapide réponse, mais malheureusement, je ne suis pas un expert en VBA.
1) - Je ne trouve pas le menu outils / contrôles supplémentaires ? Et donc je ne trouve pas :
- selectionner "Microsoft MonthView Control 6.0"
- sélectionner "Microsoft Date and Time Picker Control 6.0"
Et ensuite comment intégrer ce calendrier dans un textbox ?
De quelle façon dois-je utiliser Cdate(tadate) après avoir testé isdate(tadate) ?
Je possède la version 6.3 de VBA.
2) -A quel endroit dois-je mettre le format "# ##0,00 €" ?
BA.
First, merci pour cette rapide réponse, mais malheureusement, je ne suis pas un expert en VBA.
1) - Je ne trouve pas le menu outils / contrôles supplémentaires ? Et donc je ne trouve pas :
- selectionner "Microsoft MonthView Control 6.0"
- sélectionner "Microsoft Date and Time Picker Control 6.0"
Et ensuite comment intégrer ce calendrier dans un textbox ?
De quelle façon dois-je utiliser Cdate(tadate) après avoir testé isdate(tadate) ?
Je possède la version 6.3 de VBA.
2) -A quel endroit dois-je mettre le format "# ##0,00 €" ?
BA.
bonjour
Je ne trouve pas le menu outils / contrôles supplémentaires ?
C'est dans la fenêtre VBA.
comment intégrer ce calendrier dans un textbox ?
Le calendrier est un nouveau contrôle et il te faut l'intégrer dans ton formulaire ( UserForm )
utiliser Cdate(tadate) après avoir testé isdate(tadate) ?
Lorsque tu renseignes ta feuille Excel.
A quel endroit dois-je mettre le format "# ##0,00 €" ?
Lorsque tu renseignes ta textbox : textbox.value = format(tavaleur,"# ##0,00 €")
Je ne trouve pas le menu outils / contrôles supplémentaires ?
C'est dans la fenêtre VBA.
comment intégrer ce calendrier dans un textbox ?
Le calendrier est un nouveau contrôle et il te faut l'intégrer dans ton formulaire ( UserForm )
utiliser Cdate(tadate) après avoir testé isdate(tadate) ?
Lorsque tu renseignes ta feuille Excel.
A quel endroit dois-je mettre le format "# ##0,00 €" ?
Lorsque tu renseignes ta textbox : textbox.value = format(tavaleur,"# ##0,00 €")
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bonjour
je veux savoir si tu as déja programmer un boutton de recherche multicriteres à partir de nombreux feuilles d'un meme classeur
je veux savoir si tu as déja programmer un boutton de recherche multicriteres à partir de nombreux feuilles d'un meme classeur
Merci pour le calendrier, c'est exactement ce que je cherchais.
Encore quelques soucis : voila le code que j'ai tapé :
Private Sub CommandButton1_Click()
Sheets("Facture").Select
Range("b1").Select
Selection.End(xlDown).Select
Selection.Insert Shift:=xlDown
ActiveCell = ComboBox1
ActiveCell.Offset(0, 1) = CDate(tadate)
ActiveCell.Offset(0, 2) = TextBox4
ActiveCell.Offset(0, 3) = CheckBox1
End Sub
1) - Où dois-je insérer et comment le ISDATE ?
2) - Où dois-je insérer le format du CheckBox4 pour avoir en €.
Merci.
Encore quelques soucis : voila le code que j'ai tapé :
Private Sub CommandButton1_Click()
Sheets("Facture").Select
Range("b1").Select
Selection.End(xlDown).Select
Selection.Insert Shift:=xlDown
ActiveCell = ComboBox1
ActiveCell.Offset(0, 1) = CDate(tadate)
ActiveCell.Offset(0, 2) = TextBox4
ActiveCell.Offset(0, 3) = CheckBox1
End Sub
1) - Où dois-je insérer et comment le ISDATE ?
2) - Où dois-je insérer le format du CheckBox4 pour avoir en €.
Merci.