programing

첫 번째 숫자가 0 vba인 경우에도 숫자를 두 자리로 형식 지정

goodsources 2023. 7. 10. 22:18
반응형

첫 번째 숫자가 0 vba인 경우에도 숫자를 두 자리로 형식 지정

VBA를 사용하여 1에서 24 사이의 숫자를 2자리 숫자로 표시할 수 있으면 좋겠습니다.분명히 이것에 문제가 있는 것은 01, 02, 03 등으로 표시하고 싶은 1-9뿐입니다.이것을 수행할 수 있는 방법이 있습니까?

정수 변수는 형식을 지정할 수 없습니다. 형식을 지정하려면 문자열 변수를 사용해야 합니다.

다음을 사용하여 날짜의 일 부분을 선행 0이 있는 형식으로 변환할 수 있습니다.Day날짜에서 날짜 번호를 추출하는 기능을 사용합니다.Format와 함께 작동합니다."00"필요한 경우 선행 0을 추가하는 형식

형식(날짜(내 날짜), "00")

myDate는 전체 Date 값을 포함하는 Date 변수입니다.

다음 매크로를 작업 샘플로 사용할 수 있습니다.

Sub Macro1()
    Dim myDate As Date

    myDate = "2015-5-1"

    Dim dayPart  As String

    dayPart = Format(Day(myDate), "00")

    MsgBox dayPart
End Sub

정수 형식을 지정할 수 있습니다. format 명령어 내에서 정수를 문자열로 변환합니다.

formattedIntAsString = Format(Cstr(intValue), "00")

저는 이렇게 했습니다.

number_item = 2
number_item = WorksheetFunction.Text(number_item, "00") 

이것으로 충분합니다.

오래된 것으로 알고 있지만, 질문에 명확하게 대답하기 위해 내장 날짜 형식 지정 기능을 사용합니다.

딘을 수정하는 방법조직위원회의 답변:

Sub Macro1()
    Dim dateDate As Date
    Dim strDate  As String
    Dim strDay  As String

    dateDate = "2015-5-1"
    strDate = Format(dateDate, "mm/dd/yy") ' = "05/01/15"
    strDay = Format(dateDate, "dd")        ' = "01"

    MsgBox "The two digit day of """ & strDate & """ is """ & strDay & ""."
End Sub

언급URL : https://stackoverflow.com/questions/28016643/formatting-a-number-to-two-digits-even-if-the-first-is-a-0-vba

반응형