Créer un nouveau module, et dedans saisir ce code :
Créer un module avec ce code, vous verrez apparaître le résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 Function ajout_caractere(ByVal strValue, maxLen As Integer, Optional dir As String = "R", Optional sFill As String = "0") As String Dim nLen As Integer 'indique la longueur de la valeur envoyée nLen = Len(strValue) 'compare les deux données de longueur If maxLen < nLen Then 'prend le nombre de caractère max par la droite ajout_caractere = Right$(strValue, maxLen) ElseIf maxLen > nLen Then 'test si l'on doit rajouter les données à droite (R) ou à gauche (L) If dir = "R" Then ajout_caractere = strValue & String(maxLen - nLen, sFill) Else ajout_caractere = String(maxLen - nLen, sFill) & strValue End If Else ajout_caractere = strValue End If End Function
Peux-être aussi urilisé dans Excel :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 Function essai() Dim valeur As String, direction As String, caractere As String Dim nombre As Integer valeur = InputBox("Valeur ?", "Titre") nombre = InputBox("Nombre ?", "Titre") direction = InputBox("Direction (optionnel) ?" & Chr(13) & "(valeur par défaut : droite)", "Titre", "R") caractere = InputBox("Caractère (optionnel) ?" & Chr(13) & "(valeur par défaut : 0)", "Titre", "0") MsgBox "Valeur : " & Chr(9) & Chr(9) & valeur _ & Chr(13) & "Nombre : " & Chr(9) & Chr(9) & nombre _ & Chr(13) & "Direction : " & Chr(9) & direction _ & Chr(13) & "Caractère : " & Chr(9) & caractere _ & Chr(13) & Chr(13) _ & Chr(13) & "Résultat : " & Chr(9) & UCase(ajout_caractere(valeur, nombre, direction, caractere)), vbOKOnly + vbInformation, "Titre" End Function
Saisir une valeur dans la cellule A1 et dans la cellule C1 saisir la commande suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part =ajout_caractere(A1;10)
Partager