1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
| ' macro transforme la valeur d'une colonne alpha en num
Sub cola_coln()
Dim Err As Boolean
Dim Val_sais As String
Dim diz_sup As Integer
Dim Message As String
Const Messageinit = "Veuillez saisir la valeur de la colonne : "
Err = True
Val_sais = ""
diz_sup = 0
Message = Messageinit
While Err = True
Val_sais = UCase(InputBox(Message))
If Len(Val_sais) > 2 Or Val_sais = "" Then
Message = "Vous avez saisi une valeur incorecte !" & Chr(10) & Chr(13) & Messageinit
Else
If Len(Val_sais) = 2 Then
unisais = Asc(Mid(Val_sais, 2, 1))
dizsais = Asc(Mid(Val_sais, 1, 1))
If unisais < 91 And unisais > 64 And dizsais < 74 And dizsais > 64 Then
Err = False
Else
Message = "Vous avez saisi une valeur incorecte. " & Chr(13) & Chr(10) & Messageinit
End If
Else
unisais = Asc(Val_sais)
If unisais > 90 Or unisais < 65 Then
Message = "Vous avez saisi une valeur incorecte. " & Chr(13) & Chr(10) & Messageinit
Else
Err = False
End If
End If
End If
Wend
If Len(Val_sais) = 1 Then
diz_sup = 0
val_num = Asc(Val_sais) - 64 + diz_sup
MsgBox "la valeur numérique de : " & Val_sais & " est : " & Str(val_num)
Else
If Asc(Mid(Val_sais, 2, 1)) > 86 And Mid(Val_sais, 1, 1) = "I" Then
MsgBox "Vous avez saisi une valeur trop grande "
Else
Select Case Mid(Val_sais, 1, 1)
Case "A"
diz_sup = 26
Case "B"
diz_sup = 52
Case "C"
diz_sup = 78
Case "D"
diz_sup = 104
Case "E"
diz_sup = 130
Case "F"
diz_sup = 156
Case "G"
diz_sup = 182
Case "H"
diz_sup = 208
Case "I"
diz_sup = 234
Case Else
MsgBox "impossible veuillez débogguer le pbl"
End Select
val_num = Asc(Mid(Val_sais, 2, 1)) - 64 + diz_sup
MsgBox "la valeur numérique de : " & Val_sais & " est : " & Str(val_num)
End If
End If
End Sub |
Partager