< návrat zpět

MS Excel


Téma: Podmínka IF TIME rss

Zaslal/a 12.5.2018 23:53

Zdravím,

lámu si hlavu s problémem nastavení podmínek viz. níže 6 :

Funkce: Pokud je aktuální čas v definovaném intervalu mezi limitem A a limitem B pak zobrazit "ano" v textovém okně na slidu prezentace. Pokud je mimo interval zobrazit "ne".

Kód:

Sub Test()

Dim time As Date
Dim limit_A As Date
Dim limit_B As Date

time = Now()

limit_A = "23:50"
limit_B = "23:30"

If limit_A > time And time > limit_B Then
ActivePresentation.Slides(1).Shapes("1").TextFrame.TextRange.Text = Format("Ano")

Else
ActivePresentation.Slides(1).Shapes("1").TextFrame.TextRange.Text = Format("Ne")

End If


End Sub

Víte někdo jak na to?

Zaslat odpověď >

#040356
elninoslov
Pr.
Sub Test()
Dim time As Date
Dim limit_A As Date
Dim limit_B As Date

time = Now()

limit_A = Int(time) + TimeValue("02:50")
limit_B = Int(time) + TimeValue("01:30")

ActivePresentation.Slides(1).Shapes("1").TextFrame.TextRange.Text = IIf(limit_A > time And time > limit_B, "Ano", "Ne")

End Sub

Pohybujete sa na prelome dní, treba počítať aj s dátumom.citovat
#040417
avatar
I to je zoufale složité.
1. Co jde spočítat jako konstanta, nemá se počítat za chodu programu. Celý den má 24*60 = 1440 minut, takže 23:50 je 1430 a 23:30 je 1410 minut; jejich numerické hodnoty proto jsou 1430/1440 resp. 1410/1440.
2. Nikoho nezajímá Now, potřebuješ Time.

Const a = 1410/1440, b = 1430/1440 'automaticky double
Dim t# 'double!!!
t = Time
ActivePresentation...Text = IIf(t > a and t < b, "Ano", "Ne")

Toť vše.citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje