'시간대 추출'에 해당되는 글 1건

728x90

VBA 날짜, 시간, 시간대 추출


날짜와 시간을 다루는 함수는 굳이 VBA를 사용하지 않아도 편리하게 원하는 값을 추출이 가능합니다.

시간만 추출하는 함수는 = HOUR(날짜시간함수셀) 을 하면 시간이 추출됨

시간과 분을 16:36 이렇게 표기하고 싶다면

= TEXT(HOUR(날짜시간함수셀),"00") & ":" & TEXT(MINUTE(날짜시간함수셀),"00")

로 함수조건을 주면 됩니다.


Sub 날짜추출()
    Dim rngC As Range
    Dim rngAll As Range
   
    Application.ScreenUpdating = False    '// 화면 업데이트 (일시) 중지
    'Set rngAll = Range([B2], Cells(Rows.Count, "B").End(3))
    ActiveCell.Select
    Set rngAll = Range(ActiveCell, Cells(Rows.Count, ActiveCell.Column).End(3))
   
    For Each rngC In rngAll
        rngC.Offset(0, 1) = Left(rngC, 10)
        rngC.Offset(0, 1).NumberFormat = "yyyy-mm-dd" '// 셀서식 날짜형식 지정
    Next rngC
   
    Set rngAll = Nothing  '// 변수 초기화
    MsgBox "완료"
End Sub


Sub 시간추출()
    Dim rngC As Range
    Dim rngAll As Range
    Dim oldTime As Single       '// 걸린 시간 구하는 변수 지정
   
    Application.ScreenUpdating = False    '// 화면 업데이트 (일시) 중지
    oldTime = Timer     '// 시간 변수 설정
    'Set rngAll = Range([B2], Cells(Rows.Count, "B").End(3))
    ActiveCell.Select
    Set rngAll = Range(ActiveCell, Cells(Rows.Count, ActiveCell.Column).End(3))
   
    For Each rngC In rngAll

        rngC.Offset(0,2).NumberFormat = "General"

        rngC.Offset(0,2) = Hour(rngC) & ":" & Minute(rngC)
        'rngC.Offset(0, 2).NumberFormat = "hh:mm:ss" '// 셀서식 시간형식 지정
    Next rngC
   
    Set rngAll = Nothing  '// 변수 초기화
    MsgBox "총 " & Format(Timer - oldTime, "#0.00") & " : 초 소요"
End Sub

Sub 시간대추출()
    Dim rngC As Range
    Dim rngAll As Range
    Dim oldTime As Single       '// 걸린 시간 구하는 변수 지정
   
    Application.ScreenUpdating = False    '// 화면 업데이트 (일시) 중지
    oldTime = Timer     '// 시간 변수 설정
    Set rngAll = Range([D2], Cells(Rows.Count, "D").End(3))
    'ActiveCell.Select
    'Set rngAll = Range(ActiveCell, Cells(Rows.Count, ActiveCell.Column).End(3))
   
    For Each rngC In rngAll
        rngC.Offset(0, 3) = Hour(rngC)
        'rngC.Offset(0, 3).NumberFormat = "hh" '// 셀서식 시간형식 지정
    Next rngC
   
    Set rngAll = Nothing  '// 변수 초기화
    MsgBox "총 " & Format(Timer - oldTime, "#0.00") & " : 초 소요"
End Sub



---------------------------------------------------------------------------------------

파일명에 날짜 포함

fName = "ShopData_" & Format(Date, "yyyy-mm-dd") & ".csv"

블로그 이미지

Link2Me

,