chtite fonction pour capitaliser un texte
Source / Exemple :
Dans une form :
Private Sub Form_Load()
MsgBox Capitaliser
Dim mystring As String
mystring = "vico la chips"
mystring = Capitaliser(, mystring)
MsgBox mystring
End Sub
Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)
If Chr(KeyCode) = vbBack Then Exit Sub
Text1.Text = Capitaliser(Text1, , KeyCode)
Text1.SelStart = Len(Text1.Text)
End Sub
Private Sub Text1_LostFocus()
Text1.Text = Capitaliser(Text1, , , True)
End Sub
'------------
Dans un module :
Public Function Capitaliser( _
Optional txtbox As TextBox, _
Optional sString As String, _
Optional Icode As Integer, _
Optional bFin As Boolean) As String
'-------------------
If Chr(Icode) = " " Or bFin _
Or Len(sString) > 0 Then
Dim i As Integer, strtmp As String
If Len(sString) > 0 Then
For i = 1 To Len(sString)
If i = 1 Then 'si premier caractère
strtmp = UCase(Mid(sString, i, 1))
ElseIf Mid(sString, i, 1) = " " Then 'si espace
i = i + 1
strtmp = strtmp & " " & UCase(Mid(sString, i, 1))
Else
strtmp = strtmp & Mid(sString, i, 1)
End If
Next i
Capitaliser = strtmp
Else
For i = 1 To Len(txtbox.Text)
If i = 1 Then 'si premier caractère
strtmp = UCase(Mid(txtbox.Text, i, 1))
ElseIf Mid(txtbox.Text, i, 1) = " " Then 'si espace
i = i + 1
strtmp = strtmp & " " & UCase(Mid(txtbox.Text, i, 1))
Else
strtmp = strtmp & Mid(txtbox.Text, i, 1)
End If
Next i
Capitaliser = strtmp
End If
Else
On Error GoTo ehHandler
Capitaliser = txtbox.Text
End If
ehHandler:
If Err.Number = 91 Then
Capitaliser = ""
End If
'-------------------
End Function
Conclusion :
@+
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.