Note: The other languages of the website are Google-translated. Back to English

Làm cách nào để chèn đồng hồ đếm ngược trong Excel?

Nếu bạn muốn xử lý một số dữ liệu trong thời gian giới hạn, bạn có thể chèn đồng hồ đếm ngược vào trang tính dữ liệu của mình và khi kết thúc bộ đếm ngược thời gian, sẽ có một hộp thoại hiện ra để nhắc nhở bạn. Ở đây tôi sẽ cho bạn biết một mã VBA để chèn đồng hồ đếm ngược trong Excel.

Chèn đồng hồ đếm ngược trong Excel

Tab Office Cho phép Chỉnh sửa và Duyệt theo Tab trong Office, và Giúp Công việc của Bạn Dễ dàng hơn Nhiều ...
Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn
  • Tái sử dụng mọi thứ: Thêm các công thức, biểu đồ và bất kỳ thứ gì khác được sử dụng nhiều nhất hoặc phức tạp vào mục yêu thích của bạn và nhanh chóng sử dụng lại chúng trong tương lai.
  • Hơn 20 tính năng văn bản: Trích xuất số từ chuỗi văn bản; Trích xuất hoặc loại bỏ một phần nội dung; Chuyển đổi số và tiền tệ sang từ tiếng Anh.
  • Công cụ hợp nhất: Nhiều Workbook và Sheets thành một; Hợp nhất nhiều ô / hàng / cột mà không làm mất dữ liệu; Hợp nhất các hàng và tổng trùng lặp.
  • Công cụ tách: Chia Dữ liệu thành Nhiều Trang tính Dựa trên Giá trị; Một sổ làm việc cho nhiều tệp Excel, PDF hoặc CSV; Một cột đến nhiều cột.
  • Dán bỏ qua Hàng ẩn / được lọc; Đếm và tổng theo Màu nền; Gửi hàng loạt email được cá nhân hóa cho nhiều người nhận.
  • Bộ lọc siêu: Tạo lược đồ lọc nâng cao và áp dụng cho bất kỳ trang tính nào; Sắp xếp theo tuần, ngày, tần suất và hơn thế nữa; Lọc bằng cách in đậm, công thức, chú thích ...
  • Hơn 300 tính năng mạnh mẽ; Hoạt động với Office 2007-2021 và 365; Hỗ trợ tất cả các ngôn ngữ; Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn.

mũi tên màu xanh bong bóng bên phải Chèn đồng hồ đếm ngược trong Excel

Trong Excel, nó không thể đếm ngược thời gian, nhưng bạn có thể sao chép mã VBA sau để giúp đếm ngược thời gian.

1. Chọn một ô và định dạng nó thành định dạng thời gian bằng cách nhấp chuột phải vào ô đó và chọn Format Cells, sau đó trong hộp thoại, nhấp vào Thời gian và chọn 13: 30: 55 trong Kiểu danh sách, ở lần nhấp cuối cùng OK để thoát khỏi hộp thoại này. Xem ảnh chụp màn hình:

doc-countdown-timer-1
doc-mũi tên
doc-countdown-timer-2

2. Nhập thời gian bạn muốn đếm ngược vào ô định dạng. Xem ảnh chụp màn hình:

doc-countdown-timer-5

3. nhấn Alt + F11 chìa khóa để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

4. nhấp chuột Chèn > Mô-đun và sau đó sao chép VBA sau vào cửa sổ mới.

VBA: Đồng hồ đếm ngược.

Dim gCount As Date
'Updateby20140925
Sub Timer()
    gCount = Now + TimeValue("00:00:01")
    Application.OnTime gCount, "ResetTime"
End Sub
Sub ResetTime()
Dim xRng As Range
Set xRng = Application.ActiveSheet.Range("E1")
xRng.Value = xRng.Value - TimeSerial(0, 0, 1)
If xRng.Value <= 0 Then
    MsgBox "Countdown complete."
    Exit Sub
End If
Call Timer
End Sub

Mẹo: E1 trong đoạn mã trên cho biết ô thời gian bạn nhập ở bước 2.

5. nhấp chuột chạy nút hoặc bấm F5 để chạy đồng hồ đếm ngược. Bây giờ thời gian được đếm ngược.

doc-countdown-timer-3

6. Và khi quá trình đếm ngược kết thúc, một hộp thoại hiện ra sẽ nhắc nhở bạn.

doc-countdown-timer-4

Mẹo: Bạn không thể dừng đếm ngược khi nó đang chạy ngoại trừ việc đóng sổ làm việc.


Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Nhận xét (15)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, làm thế nào chúng ta có thể sử dụng nó cho nhiều hơn 1 bộ đếm ngược trong cùng một trang tính?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
xin chào, làm cách nào để đếm ngược cho nhiều hơn 1 giá trị?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Điều này không giải thích cách bộ hẹn giờ bắt đầu, nó có bắt đầu ngay khi bạn mở trang tính không? Tôi đang tìm xem liệu khi tôi thêm giá trị 100 vào ô "A1", đồng hồ đếm ngược sẽ bắt đầu trên ô "G2" (có thể nhấp nháy hoặc chuyển sang màu đỏ trong 30 giây cuối cùng để thể hiện sự khẩn cấp) và tôi muốn đồng hồ dừng khi tôi nhập một giá trị vào một dải ô (B2: C57) hoặc nếu không phải không có giá trị nào được nhập vào các ô đó, hãy dừng nó lại bằng cách nhấp lại vào ô "A1" hoặc nhấp chuột phải vào số đếm ngược trên ô "G2", tôi cũng sẽ muốn nhận kết quả về khoảng thời gian cần thiết để nhập một giá trị trên các ô phạm vi B2: C57 bằng cách sử dụng chênh lệch giữa thời gian bắt đầu và thời gian dừng trên ô đối chiếu với các ô phạm vi, như D2. Không chắc liệu điều này có hợp lý không nhưng tôi thực sự muốn được giúp đỡ về nó. Ý tưởng là khi ai đó thực hiện một cuộc gọi, đánh dấu số tiền trên tài khoản trên trang tính và bắt đầu đếm ngược để họ biết họ đã thực hiện cuộc gọi bao lâu. Nếu họ thực hiện một khoản thanh toán cho số tiền trên tài khoản, họ sẽ thêm nó vào một ô khác và sau đó trang tính sẽ thêm họ mất bao lâu để nhận được khoản thanh toán đó trong một ô khác và quy trình sẽ xuống dòng mỗi khi họ thực hiện một cuộc gọi mới. Nhưng mỗi lần chỉ có một ô bắt đầu quá trình. Tôi đã có một VBA nhập tên người dùng và khi trang tính đầy, họ có thể nhấp vào nút gửi và nó sẽ gửi qua email cho tôi với chủ đề và ngày tháng và xóa tất cả các yêu cầu để họ có thể bắt đầu lại vào ngày hôm sau. Tôi rất muốn chỉ cần thêm quyền ở trên vào VBA hiện có này nếu có thể, theo cách đó tôi không phải thêm mô-đun khác. Ai đó có thể giúp tôi điều này, hướng dẫn tôi từng bước một được không? VBA của tôi hoặc bất kỳ kỹ năng chương trình nào rất hạn chế.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào Jose, tôi nhận thấy tác giả đã không trả lời nhận xét của bạn, gần đây tôi mới phát hiện ra bài đăng của anh ấy và nghĩ rằng tôi sẽ giúp bạn nếu bạn vẫn cần nó. Để kích hoạt bộ hẹn giờ, bạn cần gọi thủ tục phụ, vì vậy, hãy để chúng tôi giả sử bạn có một trình phụ trong trang tính của mình để kiểm tra bất kỳ thay đổi nào đối với ô A1, ví dụ:


########
Sub Worksheet_Change (ByVal Target As Range)


Dim rInt As Range: Đặt rInt = Intersect (Target, Range ("A1"))


Nếu không rInt Is Nothing thì


Về lỗi GoTo Err:
Dim i As Integer: i = Me.Range ("A1"). Giá trị


Nếu không phải IsEmpty (vCell) thì
Hẹn giờ gọi <<< Đây là nơi bạn gọi bộ hẹn giờ
Cuối Nếu


Cuối Nếu
Thoát Sub
Lỗi:
MsgBox "Chỉ số nguyên"
End Sub
########


Thủ tục phụ "Bộ hẹn giờ" được sử dụng để đặt sự kiện, về cơ bản chúng tôi muốn điều này chạy sau mỗi 1 giây trong tương lai, đó là lý do tại sao chúng tôi sử dụng ngay + TimeValue ("00:00:01"), nếu bạn muốn cập nhật bộ hẹn giờ trong ô của bạn cứ sau hai giây hoặc mỗi phút, bạn điều chỉnh TimeValue cho phù hợp.


Thủ tục phụ "ResetTime" là nơi chúng ta thực hiện tất cả các công việc nặng nhọc, trong thủ tục phụ này, nếu bạn muốn thay đổi màu của bộ đếm thời gian thành màu đỏ, khi nó đạt đến 30 giây, bạn có thể thực hiện việc này bằng cách thêm một câu lệnh if đơn giản, giống như cái đã tồn tại trong thủ tục.


Nếu xRng.Value <= 30 Thì
xRng.Font.Color = vbRed
Cuối Nếu
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Bạn cần gọi thủ tục Phụ "Bộ hẹn giờ", điều này thường được thực hiện bằng cách gọi nó trong một Hàm / Hàm con khác nếu bạn muốn bộ đếm ngược bắt đầu sau khi bạn nhập giá trị vào ô "A1" và dừng lại khi bạn nhập dữ liệu vào một phạm vi khác, sau đó bạn cần lắng nghe sự thay đổi đối với các ô đó và tạo boolean cho thủ tục con Timer, để nó biết khi nào nên dừng, để thực hiện việc này, hãy tạo thủ tục con "Worksheet_Change", thao tác này sẽ lắng nghe trang tính để biết bất kỳ thay đổi nào, chúng tôi sau đó tạo một danh sách trắng các phạm vi sẽ chạy mã của chúng tôi.


Sub Worksheet_Change (ByVal Target As Range)

'Giá trị mặc định Boolean
Dim TimerActive dưới dạng Boolean: TimerActive = True

'Đây là nơi chúng tôi gọi là Bộ hẹn giờ và đặt giá trị của chúng tôi trong G2
Nếu không Giao nhau (Mục tiêu, Phạm vi ("A1")) thì Không có gì

If IsEmpty (Target) then TimerActive = False: Thoát Sub

Về lỗi GoTo Errr:

Dim i dưới dạng số nguyên: i = Target

Me.Range ("G2"). Giá trị = i

Hẹn giờ gọi

Khác Nếu không Giao nhau (Mục tiêu, Phạm vi ("B2: C57")) Thì Không có gì

TimerActive = Sai

If IsEmpty (Target) Sau đó thoát Sub

'Thêm mã khác ở đây nếu cần

Cuối Nếu

'Lỗi khi xử lý
Thoát Sub
Lỗi:
MsgBox "A1 Phải là số nguyên"

End Sub

Tôi cũng đã bao gồm khả năng xóa giá trị trong A1, điều này cũng sẽ dừng đếm ngược, bây giờ, trong thủ tục phụ "Bộ hẹn giờ", ở phần đầu, hãy tạo một câu lệnh if để kiểm tra xem boolean "TimerActive" của chúng ta có bằng False hay không, nếu nó không thì chúng ta cần phải Thoát Sub. Để thay đổi màu Bộ hẹn giờ khi đếm ngược, bạn cần chỉnh sửa thủ tục phụ "ResetTimer" và thêm câu lệnh if, tương tự như câu lệnh đã tồn tại, "If xRng <= 30", trong câu lệnh đó, chúng ta thêm màu sắc của chúng ta. muốn sử dụng "xRng.Font.Color = vbRed", bạn cũng có thể thay đổi màu bằng cách sử dụng "xRng.Font.Color = RGB (0,0,0)", thực hiện tương tự trong quy trình "Bộ hẹn giờ" để đặt lại màu, thực hiện điều này trước câu lệnh boolean if, để màu luôn trở lại màu mặc định, ngay cả khi dừng theo cách thủ công.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Để dừng bộ đếm thời gian khi bạn nhập giá trị vào các ô nhất định, bạn sẽ sử dụng "Worksheet_Change", chỉ bao gồm phạm vi bạn muốn nghe, bạn cũng sẽ cần tạo boolean chung để khi bạn thay đổi bất kỳ thứ gì trong phạm vi ô, nó sẽ đặt boolean này thành false, vì vậy, lần tiếp theo nó nhảy vào thủ tục phụ "Thời gian", thay vào đó, nó sẽ kiểm tra xem boolean có phải là false hay không, nếu bạn thêm "If TimerActive = False Then Exit Sub", ở đầu sub "Timer", nó sẽ thoát ra nếu boolean đó trả về false.




Sau đó, bên trong "Worksheet_Change", bạn sẽ muốn thêm "TimerActive = True" vào đầu mã và một cái gì đó giống như mã sau đây ở bất kỳ đâu.

Nếu Không Giao nhau (Mục tiêu, Phạm vi ("B2: C57")) thì Không có gì
TimerActive = Sai
Cuối Nếu
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
CÁC BẠN NGÀY TỐT
Xin vui lòng ai cần tạo một bộ đếm thời gian trên trang tính Excel của tôi ở dạng nó sẽ là một bộ đếm ngược cụ thể, chẳng hạn 45 ngày cứ sau 5 ngày, nó đưa ra lời nhắc trên trang tính với màu cụ thể cho mỗi lần đếm ngược. tôi cần nó càng sớm càng tốt.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi muốn nhận được khoảng 100 lần đọc hết thời gian vào trang tính excel của mình. Xin hãy giúp tôi. không thể viết mã cho i2c mạch. tôi không muốn màn hình led. làm ơn giúp tôi
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
xin chào đồng hồ đang chạy. vấn đề là nó tự động dừng khi sử dụng các sổ làm việc khác. làm thế nào tôi có thể giữ cho nó chạy?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
No entiendo cómo tengo que solucionar para que el cronómetro mno se pare cuando Introductionuzco un valor. Si se para al trabajar en el excel, para que quiero un cronómetro y paraquesirve el boton parar? Gracias
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Hola, tengo un problemma con esta programación en donde el temporizador avanza en 2 segundos y no 1, que puedo hacer ??
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Sau khi chạy mã, nó báo lỗi trên dòng

xRng.Value = xRng.Value - TimeSerial (0, 0, 5)

Lỗi thời gian chạy '1004':
Lỗi do ứng dụng xác định hoặc do đối tượng xác định
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, MAB, bạn nên đảm bảo rằng tham chiếu ô trong mã Phạm vi ("E1") phải giống với tham chiếu ô đã nhập thời gian. Vui lòng xem ảnh chụp màn hình, ô A1 chứa thời gian, nhưng trong mã là B1, sau đó lỗi xuất hiện.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Ячейка прописана правильно. Bạn có muốn làm gì không?
У меня он должен встать в ячейку R3. Строка выглядит так: Đặt xRng = Application.ActiveSheet.Range ("R3") но ошибка все равно есть: Lỗi thời gian chạy 1004.
Bạn có muốn làm gì không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, bạn có thể thử kiểm tra tùy chọn Bật macro VBA trong Trung tâm tin cậy trước khi chạy mã.
Bấm Tệp> Tùy chọn, trong cửa sổ Tùy chọn Excel, chọn Trung tâm Tin cậy từ ngăn bên trái, sau đó đi tới cửa sổ Trung tâm Tin cậy, chọn Cài đặt Macro và tìm tùy chọn này Bật macro VBA, chọn nó và bấm OK> OK.
https://www.extendoffice.com/images/stories/comments/sun-comment/doc-vba-setting.png
Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL