VBA エクセル 文字列の桁数指定 先頭に"0"
お世話になります。
セルに入力されたコードが、指定された桁数未満であった場合に、足りない桁数分を調整するため先頭に"0"ゼロを追加したいと思っております。
具体的には、10桁に指定されたコード番号を、間違えて6桁で入力した場合、先頭に"0000"を追加して10桁に調整したいのです。
(1)誤:54321Q
↓調整
(2)正:000054321Q
入力したら瞬時に修正をさせたいので、WorksheetにChengeEventを利用して書こうと思っているのですが、下記のとおり入力された桁数が1~9桁であった場合のそれぞれの指定を書くことしか思いつかなくて。
もう少し、Simpleな書き方はないものでしょうか?
~前略~
s = Cells(Target.Row, Target.Column).Value
If s = "" Then
Exit Sub
End If
i = Len(s)
If i > 10 Then
MsgBox "顧客番号(ICRIS#)は10桁です。"
Exit Sub
ElseIf i = 1 Then
Cells(Target.Row, Target.Column).Value = "000000000" & s
exitsub
ElseIf i = 2 Then
Cells(Target.Row, Target.Column).Value = "00000000" & s
exitsub
~省略~
よろしくご指導くださいませ。