MS Article를 제로를 추가 할 수 있습니다
Range("A1").NumberFormat = "@"
을 텍스트로 셀의 형식을 변경할 수 있습니다 . 따라서 Excel은 숫자에 15 자리 만 유효 숫자를 저장하고 15 번째 자리 이후에 숫자를 0으로 변경합니다.
숫자 서식을 지정하고 사용자가 숫자 만 입력하도록하려면이 작업을 수행 할 수 있습니다. Range A1에있는 텍스트의 유효성을 검사한다고 가정합니다. 해당되는 경우 수정하십시오.
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Whoa
Application.EnableEvents = False
If Not Intersect(Target, Range("A1")) Is Nothing Then
'~~> If entered text is not a number then erase input
If Not IsNumeric(Range("A1").Value) Then
MsgBox "invalid Input"
Application.Undo
GoTo LetsContinue
End If
Range("A1").Value = "'" & Format(Range("A1").Value, "000000000000000000")
End If
LetsContinue:
Application.EnableEvents = True
Exit Sub
Whoa:
MsgBox Err.Description
Resume LetsContinue
End Sub
후속
가 복사 및 붙여 넣기는 다음 첫번째 형식 범위 G11에있는 경우 수동으로 텍스트로 다음이 코드를
스냅 샷을 사용 G65536 (숫자 값 붙여 넣기시)
,858,428,435,942,163,210
스냅 (때 붙여 넣기 숫자가 아닌 값)
CODE
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Whoa
Dim cl As Range
Application.EnableEvents = False
If Not Intersect(Target, Range("G11:G" & Rows.Count)) Is Nothing Then
For Each cl In Target.Cells
'~~> If entered text is not a number then erase input
If Not IsNumeric(cl.Value) Then
MsgBox "invalid Input"
Application.Undo
GoTo LetsContinue
End If
cl.Value = "'" & Format(cl.Value, "000000000000000000")
Next
End If
LetsContinue:
Application.EnableEvents = True
Exit Sub
Whoa:
MsgBox Err.Description
Resume LetsContinue
End Sub
+ 1 좋은 질문 : –