Stránka 1 z 1

Urceni smeny dle casu - Excel (nyni + format bunky)

Napsal: 31 srp 2010 07:48
od MK_Vs
Dobrý den,

v buňce (D6) mám funci =nyní() a formátem času, v buňce (E6) sousední bych potřeboval vyhodnocení dle aktuálního času zda se jedná o ranní, odpolední nebo noční směnu.

Použil jsem vzorec s pomocí když, ovšem zde funguje v tomto zadání =KDYŽ(F6 14;"O";KDYŽ(F6>21;"N"))) v podstatě pouze pro ráno a dopoledne, protože logicky noc je větší než druhá podmínka 14.

Jak prosím porvést toto vyhodnocení. Děkuji.

Re: Urceni smeny dle casu - Excel (nyni + format bunky)

Napsal: 31 srp 2010 10:57
od navstevnik
odpoved mas jiz na Poradna Zive.cz - autor festerus,
prevod na ceskou lokalizaci Excelu prikladam:

Kód: Vybrat vše

=KDYŽ(A(HODNOTA.NA.TEXT(D6;"HH:MM")>="06:00";HODNOTA.NA.TEXT(D6;"HH:MM")
<"13:50");"Ranni";KDYŽ(A(HODNOTA.NA.TEXT(D6;"HH:MM")>="14:00";HODNOTA.NA.TEXT(D6;"HH:MM")<"21:50");"Odpoledni";KDYŽ(NEBO(HODNOTA.NA.TEXT(D6;"HH:MM")>"22:00";HODNOTA.NA.TEXT(D6;"HH:MM")<"05:50");"Nocni";"Prestavka")))

Re: Urceni smeny dle casu - Excel (nyni + format bunky)

Napsal: 02 zář 2010 21:28
od mike007
Toto můžeš vyřešit i s pomocí vlastní fce (vzorečku)

1. Do buňky D6 vlož následující vzorec: =hodnota.na.text(nyní();"hh:mm")
2. Stiskni klávesovou zkratku Alt+F11
3. V menu VBA vyber Insert --> Module a do prázdného okna napravo nakopíruj tuto fci:

Kód: Vybrat vše

Function smena(cas As Date) As String
   Select Case cas
      Case TimeValue("06:00:01") To TimeValue("14:00:00"):
         smena = "Ranní směna"
      Case TimeValue("14:00:01") To TimeValue("22:00:00"):
         smena = "Odpolední směna"
      Case TimeValue("22:00:01") To TimeValue("23:59:59"):
         smena = "Noční směna"
      Case TimeValue("00:00:01") To TimeValue("06:00:00"):
         smena = "Noční směna"
      Case Else:
         smena = ""
   End Select
End Function



3. VBA zavři.
4. Do buňky E6 vlož tento vzorec: =smena(D6)