Đây là một mẫu (cho ô D1 ) .
Nói D1 có công thức hiển thị thời gian:
và chúng tôi chỉ muốn hiển thị phút. Đặt macro sự kiện sau vào vùng mã bảng tính:
Private Sub Worksheet_Calculate()
With Range("D1")
v = Minute(.Value)
f = .NumberFormat
If InStr(.NumberFormat, ";;;") > 0 Then
ActiveWorkbook.DeleteNumberFormat NumberFormat:=f
End If
.NumberFormat = Chr(34) & v & Chr(34) & ";;;"
End With
End Sub
Mỗi khi bảng tính được tính, macro sẽ điều chỉnh định dạng của D1 để chỉ phản ánh số phút. (mã cũng loại bỏ các định dạng số tùy chỉnh trước đó để ngăn chặn định dạng
Vì là mã bảng tính nên rất dễ cài đặt và tự động sử dụng:
- bấm chuột phải vào tên tab gần cuối cửa sổ Excel
- chọn Xem mã - điều này sẽ xuất hiện một cửa sổ VBE
- dán nội dung vào và đóng cửa sổ VBE
Nếu bạn có bất kỳ mối quan tâm nào, trước tiên hãy thử nó trên bảng tính dùng thử.
Nếu bạn lưu sổ làm việc, macro sẽ được lưu cùng với nó. Nếu bạn đang sử dụng phiên bản Excel sau đó sau 2003, bạn phải lưu tệp dưới dạng .xlsm chứ không phải .xlsx
Để xóa macro:
- đưa lên các cửa sổ VBE như trên
- xóa mã ra
- đóng cửa sổ VBE
Để tìm hiểu thêm về macro nói chung, xem:
http://www.mvps.org/dmcritchie/excel/getstarted.htmlm
và
http://msdn.microsoft.com/en-us/l Library / ee814735 (v = office.14) .aspx
Để tìm hiểu thêm về Macro sự kiện (mã bảng tính), hãy xem:
http://www.mvps.org/dmcritchie/excel/event.htm
Macro phải được kích hoạt để làm việc này!
hh
phần là cần thiết (dẫn đầumm
) cho Excel để hiển thị phút thay vì tháng, và do đó, đánh bại mục đích ban đầu dự định. Tuy nhiên, chức năngMINUTE
được sử dụng trên ô thời gian, có thể có ích khi bạn cần kết quả. Nhưng điều đó liên quan đến " chuyển đổi thêm ", tôi sợ.