Pro zjištění počtu pracovních dní mezi dvěma daty slouží vzorec NETWORKDAYS. Tento vzorec obsahuje syntaxe:
NETWORKDAYS (začátek; konec; svátky)
- Začátek je počáteční datum.
- Konec je koncové datum.
- Svátek
Svátky je volitelný seznam kalendářních dat, která jsou vyjmuta z pracovního kalendáře (například státní a pohyblivé svátky). Tento seznam může být tvořen oblastí buněk s kalendářními daty nebo maticovou konstantou s pořadovými čísly, která představují daná kalendářní data.
Důležitá poznámka na závěr. Pokud vzorec NETWORKDAYS zobrazuje #NÁZEV?, potřebujete nainstalovat doplněk "Analytické nástroje". Doplněk nainstalujete v menu Nástroje > Doplňky > Analytické nástroje.
Komentáře
Zasílate odpověď ke stávajícímu příspěvku (zrušit).
Nemáte oprávnění přidávat příspěvky.
Registrace >
Ztracené heslo >
pratele nevite prosim nekdo jak zapsat workday ve VBA?
1.1.2010
workday
workday #N/A
workday
2.2.2010
workday
workday
Sub CISTKA()
For radek = 1 To ActiveSheet.UsedRange.Rows.Count
If IsError(Cells(radek, 7)) = True Then
If Cells(radek + 1, 1) = Cells(radek, 1) Then
Cells(radek + 1, 6) = Cells(radek, 1)
Rows(radek).Delete
radek = radek - 1
Else
Rows(radek).Delete
End If
End If
Next
End Sub
Takhle to funguje tak, ze to najde chybu, prepise datum a smaze radek.
Jde me o to, aby pri prepsani pouzil funkci workday, nebo prepsal bunky i s touto funkci.
Diky moc...
Vladacitovat
Sub PRAC_DNY()
Dim D1 As Date, D2 As Date, Datum As Date
Dim Dny As Integer, pDnu As Integer
D1 = "1.1.2010"
D2 = "31.1.2010"
pDnu = 150
Dny = NETWORKDAYS(D1, D2)
Datum = WORKDAY(D1, pDnu)
Debug.Print Dny
Debug.Print Datum
End Sub
citovat
Zatracene properties.
Mockrat dekuji...
VMcitovat