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

如何在Excel中插入倒數計時器?

如果您想在有限的時間內處理一些數據,可以在數據工作表中插入一個倒數計時器,完成倒數計時後,將彈出一個對話框提醒您。 在這裡,我將告訴您一個VBA代碼以在Excel中插入倒數計時器。

在Excel中插入倒數計時器

Office選項卡在Office中啟用選項卡式編輯和瀏覽,並使您的工作更加輕鬆...
Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%
  • 重用任何東西: 將最常用或最複雜的公式,圖表等添加到您的收藏夾中,並在將來快速重用它們。
  • 超過20種文字功能: 從文本字符串中提取數字; 提取或刪除部分文字; 將數字和貨幣轉換為英文單詞。
  • 合併工具:將多個工作簿和工作表合二為一; 合併多個單元格/行/列,而不會丟失數據; 合併重複的行和總和。
  • 分割工具:根據價值將數據分割成多個工作表; 一本工作簿可轉換為多個Excel,PDF或CSV文件; 一列到多列。
  • 跳過粘貼 隱藏/過濾的行; 計數與求和 按背景色; 向多個收件人批量發送個性化電子郵件。
  • 超級過濾器: 創建高級過濾方案並應用於任何工作表; 分類 按星期,日期,頻率等 篩選 用粗體,公式,註釋...
  • 超過300個強大的功能; 適用於 Office 2007-2021 和 365; 支持所有語言; 在您的企業或組織中輕鬆部署。

箭頭藍色右氣泡 在Excel中插入倒數計時器

在Excel中,它不能倒計時,但是您可以復制以下VBA代碼以幫助倒計時。

1.選擇一個單元格並將其格式化為時間格式,方法是右鍵單擊該單元格並選擇 單元格格式,然後在對話框中,單擊 時間 並選擇 13:30:55類別 列表,最後點擊 OK 退出此對話框。 看截圖:

文檔倒計時計時器 1
文檔箭頭
文檔倒計時計時器 2

2.在格式單元格中輸入要倒數的時間。 看截圖:

文檔倒計時計時器 5

3。 按 Alt + F11鍵 打開鑰匙 Microsoft Visual Basic for Applications 窗口。

4。 點擊 插入 > 模塊 然後將以下VBA複製到新窗口中。

VBA:倒數計時器。

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

尖端:以上代碼中的E1表示您在步驟2中鍵入的時間單元。

5。 點擊 按鈕或按下 F5 運行倒數計時器。 現在時間倒計時了。

文檔倒計時計時器 3

6.倒計時結束後,會彈出一個對話框提醒您。

文檔倒計時計時器 4

尖端:您無法在倒計時運行時停止倒計時,除非關閉工作簿。


最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

  • 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 超過 300 項強大的功能. 支持 Office / Excel 2007-2021 和 365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能 30 天免費試用。 60 天退款保證。
kte選項卡201905

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (15)
還沒有評分。 成為第一位評論!
網站主持人對此評論進行了最小化
您好,我們如何在同一張紙上使用它進行超過 1 個倒計時?
網站主持人對此評論進行了最小化
你好,我怎樣才能對超過 1 個值進行倒計時?
網站主持人對此評論進行了最小化
這沒有解釋計時器是如何啟動的,它會在您打開工作表後立即啟動嗎? 我想看看當我添加一個值 100 來表示單元格“A1”時,一個倒數計時器是否會在單元格“G2”上啟動(可能會在最後 30 秒內閃爍或變紅以顯示緊迫性)並且我希望它在我停止時停止在單元格範圍(B2:C57)中輸入一個值,或者如果在這些單元格中沒有輸入任何值,則通過再次單擊單元格“A1”或單擊單元格“G2”上的倒計時來停止它,我也會喜歡使用整理到範圍單元格的單元格(如 D2)上的開始時間和停止時間之間的差異來獲取在範圍單元格 B57:C2 上輸入值需要多長時間的結果。 不確定這一切是否有意義,但我真的很想得到一些幫助。 這個想法是,當有人接聽電話時,請在表格上記下帳戶上的金額並開始倒計時,以便他們知道通話時間。 如果他們對帳戶上的金額進行付款,他們會將其添加到另一個單元格,然後工作表將添加他們在另一個單元格中獲得該付款所花費的時間,並且每次他們採取新電話。 但是每次只有一個細胞會開始這個過程。 我已經有一個輸入用戶名的 VBA,當工作表已滿時,他們可以單擊發送按鈕,它會將主題和日期通過電子郵件發送給我,然後刪除所有內容,以便他們可以在第二天重新開始。 如果可能的話,我很想將上述權利添加到這個現有的 VBA 中,這樣我就不必添加另一個模塊。 有人可以幫助我,一步一步地陪我嗎? 我的 VBA 或任何程序技能都非常有限。
網站主持人對此評論進行了最小化
你好何塞,我注意到作者沒有回复你的評論,我最近才發現他的帖子,如果你還需要它,我想我會幫助你的。 要觸發計時器,您需要調用 sub 過程,因此讓我們假設您的工作表中有一個 sub 來檢查單元格 A1 的任何更改,例如:


#########
sub Worksheet_change(byval目標作為範圍)


將 rInt 調暗為範圍:設置 rInt = Intersect(Target, Range("A1"))


如果不是 rInt 什麼都不是,那麼


在錯誤轉到錯誤時:
將 i 調暗為整數: i = Me.Range("A1").Value


如果不是 IsEmpty(vCell) 則
調用定時器 <<< 這是你調用定時器的地方
如果結束


如果結束
退出小組
呃:
MsgBox "僅限整數"
END SUB
#########


“Timer”子程序用於設置事件,我們基本上希望它在未來每 1 秒運行一次,這就是為什麼我們使用 now + TimeValue("00:00:01"),如果你想更新定時器每兩秒或每分鐘在您的單元格中,您相應地調整 TimeValue。


“ResetTime”子程序是我們完成所有繁重工作的地方,在這個子程序中,如果您想將計時器的顏色更改為紅色,一旦達到 30 秒,您可以通過添加一個簡單的 if 語句來實現,就像程序中已經存在的一樣。


如果 xRng.Value <= 30 那麼
xRng.Font.Color = vbRed
如果結束
網站主持人對此評論進行了最小化
您需要調用子過程“計時器”,如果您希望在單元格“A1”中輸入值後開始倒計時並在將數據輸入另一個範圍時停止,這通常通過在另一個子/函數中調用它來完成,那麼您需要監聽這些單元格的更改並為 Timer 子過程創建一個布爾值,以便它知道何時停止,為此創建一個“Worksheet_Change”子過程,這將監聽工作表的任何更改,我們然後創建將運行我們的代碼的範圍白名單。


sub Worksheet_change(byval目標作為範圍)

'布爾默認值
將 TimerActive 調暗為布爾值:TimerActive = True

'這是我們調用 Timer 並在 G2 中設置值的地方
If Not Intersect(Target, Range("A1")) 什麼都不是

如果 IsEmpty(Target) Then TimerActive = False: Exit Sub

在錯誤 GoTo Errr 時:

將 i 調暗為整數: i = 目標

Me.Range("G2").Value = i

通話計時器

ElseIf Not Intersect(Target, Range("B2:C57")) 則什麼都不是

TimerActive = 假

如果IsEmpty(目標),然後退出Sub

'如果需要在這裡添加更多代碼

如果結束

'錯誤處理
退出小組
錯誤:
MsgBox "A1 必須是整數"

END SUB

我還包括刪除 A1 中的值的功能,這也將停止倒計時,現在,在“Timer”子過程中,在開始時創建一個 if 語句來檢查我們的布爾值“TimerActive”是否等於 False,如果它確實如此,然後我們需要退出 Sub。 要在倒計時時更改 Timers 顏色,您需要編輯“ResetTimer”子過程,並添加一個 if 語句,類似於已經存在的那個,“如果 xRng <= 30”,在該語句中我們添加我們的顏色想要使用“xRng.Font.Color = vbRed”,您也可以使用“xRng.Font.Color = RGB(0,0,0)”更改顏色,在“定時器”過程中執行相同操作來重置顏色,在布爾 if 語句之前執行此操作,以便顏色始終恢復為其默認值,即使手動停止也是如此。
網站主持人對此評論進行了最小化
當您在某些單元格中輸入值時要停止計時器,您可以使用“Worksheet_Change”,只需包含您要收聽的範圍,您還需要創建一個全局布爾值,因此當您更改單元格範圍內的任何內容時,它會將這個布爾值設置為假,所以下次它跳轉到“時間”子過程時,它會檢查布爾值是否為假,如果你在開頭添加“如果 TimerActive = False Then Exit Sub” “計時器”子,如果該布爾值返回 false,它將退出。




然後在“Worksheet_Change”中,您需要在代碼的開頭添加“TimerActive = True”,並在任何地方添加類似於以下代碼的內容。

If Not Intersect(Target, Range("B2:C57")) 什麼都不是
TimerActive = 假
如果結束
網站主持人對此評論進行了最小化
美好的一天,伙計們
請我需要在我的 Excel 工作表上創建一個計時器,它將倒計時到一個特定的時間,例如每 45 天 5 天,它會在工作表上為每個倒計時提供一個特定顏色的提醒。 我需要它盡快。
網站主持人對此評論進行了最小化
我想在我的 Excel 表中獲得大約 100 個停機時間讀數。請幫助我。 不可能為 i2c 電路編寫代碼。 我不想要led顯示屏。 請幫幫我
網站主持人對此評論進行了最小化
嗨,計時器正在運行。 問題是使用其他工作簿時它會自動停止。 我怎樣才能讓它繼續運行?
網站主持人對此評論進行了最小化
No entiendo cómo tengo que solucionar para que el cronómetro mno se pare cuando introduzco un valor。 Si se para al trabajar en el excel, para que quiero un cronómetro y paraquesirve el boton parar? 格拉西亞斯
網站主持人對此評論進行了最小化
Hola, tengo un problema con esta programación en donde el temporizador avanza en 2 segundos y no 1, que puedo hacer??
網站主持人對此評論進行了最小化
運行代碼後,它會在線給出錯誤

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

運行時錯誤'1004':
應用程序定義或對象定義的錯誤
網站主持人對此評論進行了最小化
嗨,MAB,您應該確保代碼中的單元格引用 範圍(“E1”) 必須與輸入時間的單元格引用相同。 請看截圖,單元格A1包含時間,但在代碼中是B1,然後彈出錯誤。
查看附件 (1 / 5)
網站主持人對此評論進行了最小化
Ячейка прописана правильно。 В чем причина неработоспособности?
У меня он должен встать в ячейку R3。 Строка выглядит так:設置 xRng = Application.ActiveSheet.Range("R3") но ошибка все равно есть:運行時錯誤 1004。
Что может быть не так?
網站主持人對此評論進行了最小化
您好,您可以在運行代碼之前嘗試在信任中心檢查啟用 VBA 宏選項。
單擊“文件”>“選項”,在“Excel 選項”窗口中,從左側窗格中選擇“信任中心”,然後轉到“信任中心”窗口,選擇“宏設置”,找到此選項“啟用 VBA 宏”,選中它,然後單擊“確定”>“確定”。
https://www.extendoffice.com/images/stories/comments/sun-comment/doc-vba-setting.png
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護