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

Jak vložit odpočítávací časovač v aplikaci Excel?

Pokud chcete pracovat s některými daty v omezeném čase, můžete do datového listu vložit odpočítávací měřič a po dokončení odpočítávání se zobrazí vyskakovací dialog, který vám to připomene. Zde vám řeknu kód VBA pro vložení odpočítávacího časovače do aplikace Excel.

Vložte odpočítávací časovač v aplikaci Excel

Karta Office Povolte úpravy a procházení na kartách v Office a vaše práce bude mnohem jednodušší ...
Kutools pro Excel vyřeší většinu vašich problémů a zvýší vaši produktivitu
80%
  • Znovu použít cokoli: Přidejte do svých oblíbených nejpoužívanější nebo nejsložitější vzorce, grafy a cokoli jiného a rychle je v budoucnu znovu použijte.
  • Více než 20 textových funkcí: Extrahovat číslo z textového řetězce; Extrahovat nebo odebrat část textů; Převádějte čísla a měny na anglická slova.
  • Sloučit nástroje: Více sešitů a listů do jednoho; Sloučit více buněk / řádků / sloupců bez ztráty dat; Sloučit duplicitní řádky a součet.
  • Rozdělené nástroje: Rozdělit data do více listů na základě hodnoty; Jeden sešit pro více souborů Excel, PDF nebo CSV; Jeden sloupec na více sloupců.
  • Vložit přeskakování Skryté / filtrované řádky; Count And Sum podle barvy pozadí; Posílejte hromadně osobní e-maily více příjemcům.
  • Super filtr: Vytvořte pokročilá schémata filtrů a použijte je na jakékoli listy; Typ podle týdne, dne, frekvence a dalších; Filtr tučně, vzorce, komentovat ...
  • Více než 300 výkonných funkcí; Funguje s Office 2007-2021 a 365; Podporuje všechny jazyky; Snadné nasazení ve vašem podniku nebo organizaci.

šipka modrá pravá bublina Vložte odpočítávací časovač v aplikaci Excel

V aplikaci Excel nemůže odpočítávat čas, ale můžete zkopírovat následující kód VBA, který vám pomůže odpočítávat čas.

1. Vyberte buňku a naformátujte ji jako formátování času kliknutím pravým tlačítkem na buňku a výběrem Formát buněk, pak v dialogovém okně klikněte na Čas a výběr 13: 30: 55 v typ seznamu, při posledním kliknutí OK pro opuštění tohoto dialogu. Viz snímek obrazovky:

doc-countdown-timer-1
doc-šipka
doc-countdown-timer-2

2. Zadejte čas, který chcete odpočítávat, do buňky formátování. Viz snímek obrazovky:

doc-countdown-timer-5

3. lis Alt + F11 klíče k otevření Microsoft Visual Basic pro aplikace okno.

4. cvaknutí Vložit > Modul a poté zkopírujte následující VBA do nového okna.

VBA: Odpočítávací měřič.

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

Tip: E1 ve výše uvedeném kódu označuje časovou buňku, kterou zadáte v kroku 2.

5. cvaknutí Běh nebo stiskněte tlačítko F5 spustit odpočítávací časovač. Nyní je čas odpočítáván.

doc-countdown-timer-3

6. A když je odpočítávání hotové, vyskočí vám dialogové okno.

doc-countdown-timer-4

Tip: Nelze zastavit odpočítávání, když běží, kromě zavření sešitu.


Nejlepší kancelářské nástroje produktivity

Kutools pro Excel vyřeší většinu vašich problémů a zvýší vaši produktivitu
80%

  • Opakované použití: Rychle vložte složité vzorce, grafy a cokoli, co jste dříve používali; Šifrovat buňky s heslem; Vytvořte seznam adresátů a posílat e-maily ...
  • Super Formula Bar (snadno upravit více řádků textu a vzorce); Rozložení pro čtení (snadno číst a upravovat velké množství buněk); Vložit do filtrovaného rozsahu...
  • Sloučit buňky / řádky / sloupce bez ztráty dat; Rozdělit obsah buněk; Zkombinujte duplicitní řádky / sloupce... Zabraňte duplicitním buňkám; Porovnat rozsahy...
  • Vyberte možnost Duplikovat nebo Jedinečný Řádky; Vyberte prázdné řádky (všechny buňky jsou prázdné); Super hledání a fuzzy hledání v mnoha sešitech; Náhodný výběr ...
  • Přesná kopie Více buněk beze změny odkazu na vzorec; Automaticky vytvářet reference do více listů; Vložte odrážky, Zaškrtávací políčka a další ...
  • Extrahujte text, Přidat text, Odebrat podle pozice, Odebrat mezeru; Vytváření a tisk mezisoučtů stránkování; Převod mezi obsahem buněk a komentáři...
  • Super filtr (uložit a použít schémata filtrů na jiné listy); Rozšířené řazení podle měsíce / týdne / dne, frekvence a dalších; Speciální filtr tučnou kurzívou ...
  • Kombinujte sešity a pracovní listy; Sloučit tabulky na základě klíčových sloupců; Rozdělte data do více listů; Dávkový převod xls, xlsx a PDF...
  • Více než
    300
    výkonné funkce
    . Podporuje Office/Excel
    2007-2019 a 365
    . Podporuje všechny jazyky. Snadné nasazení ve vašem podniku nebo organizaci. Plné funkce
    30
    -denní zkušební verze zdarma. 60denní záruka vrácení peněz.
karta kte 201905

Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu tím
    50%
    a každý den vám sníží stovky kliknutí myší!
officetab dno
Komentáře (15)
Zatím žádné hodnocení. Buďte první, kdo ohodnotí!
Tento komentář byl moderátorem webu minimalizován
Dobrý den, jak to můžeme použít pro více než 1 odpočítávání na stejném listu?
Tento komentář byl moderátorem webu minimalizován
ahoj, jak mohu provést odpočítávání pro více než 1 hodnotu?
Tento komentář byl moderátorem webu minimalizován
To nevysvětluje, jak se časovač spustí, spustí se, jakmile otevřete list? Hledám, jestli když přidám hodnotu 100, abych řekl buňku „A1“, odpočítávání se spustí na buňce „G2“ (možná bliká nebo zčervená během posledních 30 sekund, abych ukázal naléhavost) a chci, aby se zastavil, když zadejte hodnotu v rozsahu buněk (B2:C57) nebo pokud do těchto buněk nebyla zadána žádná hodnota, zastavte ji opětovným kliknutím na buňku "A1" nebo kliknutím vpravo na odpočítávání na buňku "G2", také bych chtěli byste získat výsledky o tom, jak dlouho trvalo zadání hodnoty do buněk rozsahu B2:C57 pomocí rozdílu mezi časem zahájení a časem ukončení na buňce porovnávající s buňkami rozsahu, jako je D2. Nejsem si jistý, jestli to všechno dává smysl, ale opravdu bych s tím potřeboval pomoc. Myšlenka je taková, že když někdo zavolá, označí na listu částku na účtu a spustí se odpočítávání, aby věděl, jak dlouho telefonuje. Pokud přijmou platbu na částku na účtu, přidali by ji do jiné buňky a list pak přidá, jak dlouho jim trvalo, než dostali tuto platbu do další buňky, a proces bude pokračovat pokaždé, když přijmou nový hovor. Pokaždé by však proces zahájila pouze jedna buňka. Už mám VBA, do kterého se zadávají jména uživatelů, a když je list plný, mohou kliknout na tlačítko Odeslat a pošle mi to e-mailem s předmětem a datem a smaže všechny celistvosti, aby mohli začít znovu další den. Rád bych jen přidal výše uvedené přímo do tohoto stávajícího VBA, pokud je to možné, takže nemusím přidávat další modul. Může mi s tím někdo pomoci, provést mě krok za krokem? Moje znalosti jazyka VBA nebo jakýchkoli programů jsou velmi omezené.
Tento komentář byl moderátorem webu minimalizován
Dobrý den, Jose, všiml jsem si, že autor nereagoval na váš komentář, teprve nedávno jsem objevil jeho příspěvek a myslel jsem, že vám pomůžu, pokud to stále potřebujete. Chcete-li spustit časovač, musíte zavolat dílčí proceduru, takže předpokládejme, že máte ve svém listu dílčí část, která kontroluje jakékoli změny v buňce A1, například:


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


Dim rInt As Range: Nastavit rInt = Intersect(Target, Range("A1"))


If Not rInt Is Nothing Then


Při chybě GoTo Err:
Dim i As Integer: i = Me.Range("A1").Hodnota


Pokud ne IsEmpty(vCell) Then
Call Timer <<< Zde zavoláte časovač
End If


End If
Konec Sub
Chybovat:
MsgBox "Pouze celé číslo"
End Sub
#########


K nastavení události se používá procedura Sub "Timer", v podstatě chceme, aby se v budoucnu spouštěla ​​každou 1 sekundu, proto používáme now + TimeValue("00:00:01"), pokud chcete aktualizovat časovač ve vaší buňce každé dvě sekundy nebo každou minutu upravíte TimeValue podle toho.


Podprocedura "ResetTime" je místo, kde děláme veškerou těžkou práci, v této dílčí proceduře, pokud chcete změnit barvu časovače na červenou, jakmile dosáhne 30 sekund, můžete to udělat přidáním jednoduchého příkazu if, stejně jako ten, který již v rámci postupu existuje.


Pokud xRng.Value <= 30 Potom
xRng.Font.Color = vbRed
End If
Tento komentář byl moderátorem webu minimalizován
Musíte zavolat proceduru Sub "Časovač", to se obvykle provádí jejím voláním v jiné pod/funkci, pokud chcete, aby odpočítávání začalo po zadání hodnoty do buňky "A1" a zastavilo se, když zadáte data do jiného rozsahu, pak musíte naslouchat změnám v těchto buňkách a vytvořit boolean pro dílčí proceduru Timer, takže ví, kdy se má zastavit, k tomu vytvořte dílčí proceduru "Worksheet_Change", to bude poslouchat pracovní list pro jakékoli změny, my poté vytvořte seznam povolených rozsahů, na kterých bude spuštěn náš kód.


Sub Worksheet_Change (ByVal Target As Range)

'Výchozí logická hodnota
Dim TimerActive As Boolean: TimerActive = True

„Tady nazýváme časovač a naši hodnotu nastavíme v G2
If Not Intersect(Target, Range("A1")) Is Nothing Then

If IsEmpty(Target) Then TimerActive = False: Exit Sub

Při chybě GoTo Errr:

Dim i Jako celé číslo: i = Cíl

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

Časovač hovorů

ElseIf Not Intersect(Target, Range("B2:C57")) Is Nothing Then

TimerActive = False

Pokud IsEmpty (Target), pak Exit Sub

'V případě potřeby sem přidejte další kód

End If

'Chyba při zpracování
Konec Sub
chyba:
MsgBox "A1 musí být celé číslo"

End Sub

Zahrnul jsem také možnost smazat hodnotu v A1, což také zastaví odpočítávání, nyní v dílčí proceduře "Timer" na začátku vytvořte příkaz if, který zkontroluje, zda se naše booleovské "TimerActive" rovná False, pokud ano, pak musíme ukončit Sub. Chcete-li změnit barvu časovačů při odpočítávání, musíte upravit dílčí proceduru "ResetTimer" a přidat příkaz if, podobný tomu, který již existuje, "If xRng <= 30", do tohoto příkazu přidáme barvu, kterou chcete použít "xRng.Font.Color = vbRed", můžete také změnit barvu pomocí "xRng.Font.Color = RGB(0,0,0)", proveďte totéž v postupu "Timer" pro resetování barvy, proveďte to před booleovským příkazem if, aby se barva vždy vrátila zpět na výchozí hodnotu, i když je ručně zastavena.
Tento komentář byl moderátorem webu minimalizován
Chcete-li zastavit časovač při zadávání hodnot do určitých buněk, použili byste "Worksheet_Change", stačí zahrnout rozsah, který chcete poslouchat, budete také muset vytvořit globální boolean, takže když změníte cokoli v rozsahu buněk, by nastavil tento boolean na hodnotu false, takže při příštím skoku do dílčí procedury "Time" by místo toho zkontroloval, zda je boolean nepravdivý, pokud přidáte "If TimerActive = False Then Exit Sub" na začátek pod "Timer", bude ukončen, pokud tento boolean vrátí hodnotu false.




Pak do "Worksheet_Change" budete chtít přidat "TimerActive = True" na začátek kódu a něco jako následující kód kamkoli.

If Not Intersect(Target, Range("B2:C57")) Is Nothing Then
TimerActive = False
End If
Tento komentář byl moderátorem webu minimalizován
DOBRÝ DEN KLUCI
Potřebuji prosím vytvořit časovač na mém listu Excelu ve formě, že to bude odpočítávání do konkrétního, například 45 dní každých 5 dní, na listu se zobrazí připomenutí se specifickou barvou pro každé odpočítávání. potřebuji to co nejdříve.
Tento komentář byl moderátorem webu minimalizován
Chci získat asi 100 odečtů na můj excel sheet.please pomozte mi. nemožné napsat kódy pro i2c obvod. nechci LED displej. plz pomozte mi
Tento komentář byl moderátorem webu minimalizován
ahoj, časovač už běží. problém je, že se automaticky zastaví při použití jiných sešitů. jak to můžu udržet v chodu?
Tento komentář byl moderátorem webu minimalizován
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 botton parar? Gracias
Tento komentář byl moderátorem webu minimalizován
Dobrý den, tento problém s tímto programem a donde el temporizador avanza en 2 segundos y no 1, que puedo hacer??
Tento komentář byl moderátorem webu minimalizován
Po spuštění kódu to dává chybu online

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

Chyba při spuštění "1004":
Chyba definovaná aplikací nebo objektem
Tento komentář byl moderátorem webu minimalizován
Ahoj, MAB, měli byste se ujistit, že odkaz na buňku je v kódu Rozsah ("E1") musí být shodný s odkazem na buňku, která zadala čas. Podívejte se prosím na snímek obrazovky, buňka A1 obsahuje čas, ale v kódu je B1, pak se objeví chyba.
Tento komentář byl moderátorem webu minimalizován
Ячейка прописана правильно. В чем причина неработоспособности?
У меня он должен встать в ячейку R3. Строка выглядит так: Set xRng = Application.ActiveSheet.Range("R3") но ошибка все равно есть: Run time error 1004.
Что может быть не так?
Tento komentář byl moderátorem webu minimalizován
Ahoj, před spuštěním kódu můžete zkusit zaškrtnout možnost Povolit makra VBA v Centru důvěryhodnosti.
Klikněte na Soubor > Možnosti, v okně Možnosti aplikace Excel vyberte v levém podokně Centrum důvěryhodnosti, poté přejděte do okna Centrum důvěryhodnostin, vyberte Nastavení maker a najděte tuto možnost Povolit makra VBA, zaškrtněte ji a klikněte na OK > OK.
https://www.extendoffice.com/images/stories/comments/sun-comment/doc-vba-setting.png
Zatím zde nejsou žádné komentáře
Zanechat své připomínky
Odesílání jako host
×
Ohodnoťte tento příspěvek:
0   Postavy
Doporučená umístění

Sociální sítě

Copyright © 2009 - www.extendoffice.com. | Všechna práva vyhrazena. Poháněno ExtendOffice. | |. | Sitemap
Microsoft a logo Office jsou ochranné známky nebo registrované ochranné známky společnosti Microsoft Corporation ve Spojených státech a / nebo jiných zemích.
Chráněno Sectigo SSL