La zone de texte peut être utilisé comme un champ multiligne. Pour ce faire, définissez la valeur de la propriété MultiLine sur True. À titre d’exemple, construisons un projet simple qui convertit les euros en dollars. Ce projet a deux zones de texte: simple et multiligne. Dans la zone de texte simple, le montant initial est entré, qui, lorsque la touche <Entrée> est enfoncée, il est converti en dollars, et le résultat est affiché dans la zone de texte multiligne comme le montre la figure suivante :
Figure: 1 Conversion de la money
Créez donc un formulaire sur lequel vous placez deux zones de texte et, à l’aide de la fenêtre Propriétés, définissez leurs valeurs de propriété, comme indiqué dans le tableau. 1.
Tableau 1 : Valeurs de propriété définies dans la fenêtre Propriétés
Objet | Propriété | Valeur |
Zone de texte | Name | TxtMonant |
Zone de texte | Name | TxtConversion |
Dans le module formulaire, saisissez le code :
Private taux As Double Private Sub UserForm_Initialize() taux = 1.19 txtConversion.MultiLine = True txtConversion.Locked = True End Sub Private Sub txtMontant_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _ ByVal Shift As Integer) If KeyCode = vbKeyReturn Then Dim r As Double Dim d As Double r = txtMontant.Text d = FormatNumber(r / taux, 2) txtConversion.Text = "Monatnt à convertie en euros " & r & vbCr & _ "Taux de conversion " & taux & vbCr & _ "Montant convertir " & d & " Dollars" End If End Sub
Commentaires
■ Pour éviter que l’utilisateur ne corrige les résultats du calcul, le champ multiligne est bloqué avec la propriété Locked.
■ L’instruction VbCr, équivalent à Chr(13) est un caractère de saut de paragraphe.