Điền và chuyển định dạng giờ, phút

Liên hệ QC

Cát Lượng

Thành viên tiêu biểu
Tham gia
14/11/18
Bài viết
403
Được thích
66
Em chào các anh/chị.
Xin được sự giúp đỡ của các anh/chị vấn đề sau ạ!
Ở cột X và Y là cột thời gian
Em nhờ các anh/chị giúp em code: để khi chạy code thì xuất hiện thời gian ở cột Z:
1/ Thời gian ở cột Z như trên và có định dạng là định dạng chung
2/ thời gian cột Z (bắt đầu và kết thúc) được chuyển tương ứng từ cột X và Y sang
Em xin cảm ơn!
cv.png
 

File đính kèm

  • tro giup.xlsx
    11.3 KB · Đọc: 6
Lần chỉnh sửa cuối:
Em chào các anh/chị.
Xin được sự giúp đỡ của các anh/chị vấn đề sau ạ!
Ở cột X và Y là cột thời gian
Em nhờ các anh/chị giúp em code: để khi chạy code thì xuất hiện thời gian ở cột Z:
1/ Thời gian ở cột Z như trên và có định dạng là định dạng chung
2/ thời gian cột Z (bắt đầu và kết thúc) được chuyển tương ứng từ cột X và Y sang
Em xin cảm ơn!
View attachment 221569
Bạn thử cái sub này nhé.
Mã:
Sub aa()
   Dim arr, i As Long, j As Long, kq
   arr = Range("X5:Y26").Value
   ReDim kq(1 To UBound(arr), 1 To 1)
   For i = 1 To UBound(arr)
       kq(i, 1) = Format(Hour(arr(i, 1)), "00") & "h" & Format(Minute(arr(i, 1)), "00") & "-" & Format(Hour(arr(i, 2)), "00") & "h" & Format(Minute(arr(i, 2)), "00")
   Next i
        Range("AA5:AA26").Value = kq
End Sub
 
Bạn thử cái sub này nhé.
Mã:
Sub aa()
   Dim arr, i As Long, j As Long, kq
   arr = Range("X5:Y26").Value
   ReDim kq(1 To UBound(arr), 1 To 1)
   For i = 1 To UBound(arr)
       kq(i, 1) = Format(Hour(arr(i, 1)), "00") & "h" & Format(Minute(arr(i, 1)), "00") & "-" & Format(Hour(arr(i, 2)), "00") & "h" & Format(Minute(arr(i, 2)), "00")
   Next i
        Range("AA5:AA26").Value = kq
End Sub
Em có chạy đoạn code của anh và sửa lại cho vị trí dữ liệu vào ô cần điền nhưng khi ở cột X và Y không có dữ liệu thì cột Z vẫn có định dạng 00h00-00h00, anh giúp em sửa lại chút để khi cột X và Y không có dữ liệu thì cột Z cũng trống chứ không phải là định dạng 00h00-00h00loi.png
 

File đính kèm

  • loi 2.xlsm
    17.7 KB · Đọc: 6
khi cột X và Y không có dữ liệu thì cột Z cũng trống chứ không phải là định dạng 00h00-00h00
Thêm dòng này vào:

If arr(i, 1) > 0 And arr(i, 2) > 0 Then

Mã:
Sub test()
   Dim arr, i As Long, j As Long, kq
   arr = Range("X5:Y26").Value
   ReDim kq(1 To UBound(arr), 1 To 1)
   For i = 1 To UBound(arr)
        If arr(i, 1) > 0 And arr(i, 2) > 0 Then
            kq(i, 1) = Format(arr(i, 1), "hh\hmm") & "-" & Format(arr(i, 2), "hh\hmm")
        End If
   Next i
        Range("AA5:AA26").Value = kq
End Sub
 
Thêm dòng này vào:

If arr(i, 1) > 0 And arr(i, 2) > 0 Then

Mã:
Sub test()
   Dim arr, i As Long, j As Long, kq
   arr = Range("X5:Y26").Value
   ReDim kq(1 To UBound(arr), 1 To 1)
   For i = 1 To UBound(arr)
        If arr(i, 1) > 0 And arr(i, 2) > 0 Then
            kq(i, 1) = Format(arr(i, 1), "hh\hmm") & "-" & Format(arr(i, 2), "hh\hmm")
        End If
   Next i
        Range("AA5:AA26").Value = kq
End Sub
Em cám ơn anh! được rồi anh ạ!
 
Nếu bạn muốn dùng công thức thì:
=IF(X2="","",TEXT(HOUR(X2),"00") & "h"&TEXT(MINUTE(X2),"00") & "-" &TEXT(HOUR(Y2),"00") & "h" &TEXT(MINUTE(Y2),"00") )
 
Lần chỉnh sửa cuối:
Em chào các anh/chị.
Xin được sự giúp đỡ của các anh/chị vấn đề sau ạ!
Ở cột X và Y là cột thời gian
Em nhờ các anh/chị giúp em code: để khi chạy code thì xuất hiện thời gian ở cột Z:
1/ Thời gian ở cột Z như trên và có định dạng là định dạng chung
2/ thời gian cột Z (bắt đầu và kết thúc) được chuyển tương ứng từ cột X và Y sang
Em xin cảm ơn!
View attachment 221569
Thêm cách
Mã:
=IF(X2="","",SUBSTITUTE(TEXT(X2,"hh.mm")&":"&TEXT(Y2,"hh.mm"),".","h"))
 
Web KT
Back
Top Bottom