• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBA エクセル 文字列の桁数指定 先頭に"0")

VBAエクセル文字列の桁数指定 先頭に0を追加

このQ&Aのポイント
  • VBAを使用して、エクセルのセルに入力された文字列の桁数を指定し、足りない桁数を先頭に0を追加する方法について教えてください。
  • 具体的には、10桁に指定されたコード番号を、誤って6桁で入力した場合に、先頭に0000を追加して10桁に調整する方法を知りたいです。
  • また、入力した文字列を修正するためにWorksheetのChangeイベントを使用する方法についても教えていただけますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

たとえばA列についてそのような操作を行う場合 private sub worksheet_change(byval Target as excel.range)  dim h as range  if application.intersect(target, range("A:A")) is nothing then exit sub  for each h in application.intersect(target, range("A:A"))  if h <> "" then   h.numberformatlocal = "@"   application.enableevents = false  ’必ず忘れず行う   h = right("0000000000" & h, 10)   application.enableevents = true  end if  next end sub といった具合に。

その他の回答 (2)

  • m3_maki
  • ベストアンサー率64% (296/460)
回答No.3

If i > 10 Then   MsgBox "顧客番号(ICRIS#)は10桁です。"   Exit Sub Else   Cells(Target.Row, Target.Column).Value = Right("000000000" & s, 10) EndIf

  • FEX2053
  • ベストアンサー率37% (7991/21371)
回答No.1

どこかのセルを使って、 =RIGHT("0000000000"&A1,10) こうすればいいだけの話です。

関連するQ&A