Jak generovat náhodné datum v pracovní den nebo víkend v aplikaci Excel?
Tento kurz hovoří o generování pouze náhodných dnů v týdnu nebo pouze náhodných víkendových dat v aplikaci Excel. Další podrobnosti získáte podle níže uvedených kroků.
V aplikaci Excel vygenerujte pouze náhodný den v týdnu
Generujte pouze náhodný den v týdnu nebo pouze náhodný víkend s programem Kutools pro Excel
V aplikaci Excel vygenerujte pouze náhodný den v týdnu
V aplikaci Excel existují dvě metody, které vám pomohou randomizovat pouze pracovní dny v časovém období podle potřeby.
Metoda 1 vygeneruje náhodný den v týdnu pomocí vzorce
Vyberte buňku a zadejte tento vzorec = DATE (2014, 1, 1) + LARGE (IF (WEEKDAY (DATE (2014, 1, 1) + ROW ($ 1: $ 365) -1, 2) <6, ROW ($ 1: $ 365) -1, "" ), RANDBETWEEN (1, SUM (- (WEEKDAY (DATE (2014, 1, 1) + ROW ($ 1: $ 365) -1, 2) <6)))), Poté stiskněte tlačítko Shift + Ctrl + Enter současně přetáhněte úchyt výplně do rozsahu, který chcete generovat v pracovní den. Viz screenshot:
Tip:
1. Chcete-li generovat jedinečné náhodné pracovní dny, můžete použít tento vzorec =DATE(2014, 1, 1)+(LARGE(IF(WEEKDAY((DATE(2014, 1, 1)+ROW($1:$365)-1)*((COUNTIF($A$1:A1, DATE(2014, 1, 1)+ROW($1:$365)-1))=0), 2)<6, ROW($1:$365)-1, ""), RANDBETWEEN(1, SUM(--(WEEKDAY((DATE(2014, 1, 1)+ROW($1:$365)-1)*((COUNTIF($A$1:A1, DATE(2014, 1, 1)+ROW($1:$365)-1))=0), 2)<6))))) a nezapomeňte stisknout Shift + Ctrl + Enter.
2. Ve výše uvedených vzorcích je 2014,1,1 počátečním datem požadovaného časového období, 365 je počet dní v daném časovém období, můžete je podle potřeby změnit.
3. Nelze vložit vzorec generující jedinečné náhodné dny v týdnu do A1.
Metoda 2 vygeneruje náhodný den v týdnu pomocí VBA
Pokud chcete randomizovat pracovní dny do jednoho roku a znáte VBA, můžete postupovat takto:
1. lis Alt + F11 klíče k otevření Microsoft Visual Basic pro aplikace okno.
2. cvaknutí Vložit > Modul, potom vložte pod kód VBA do vyskakovacích oken.
VBA: Randomizujte všední den do jednoho roku.
Dim RandomizedYet As Boolean
'Updateby20150108
Function RandomizeDates(pYear As Long)
Dim i As Long
Dim DaysInYear As Long
Dim xIndex As Long
Dim RndIndex As Long
Dim Temp As Date
Dim Weekdays() As Variant
If Not RandomizedYet Then
RandomizedYet = True
Randomize
End If
DaysInYear = DateSerial(pYear + 1, 1, 1) - DateSerial(pYear, 1, 1)
ReDim Weekdays(1 To DaysInYear)
For i = 1 To DaysInYear
If Weekday(DateSerial(pYear, 1, i), vbMonday) < 6 Then
xIndex = xIndex + 1
Weekdays(xIndex) = DateSerial(pYear, 1, i)
End If
Next
ReDim Preserve Weekdays(1 To xIndex)
For i = xIndex To 1 Step - 1
RndIndex = Int(i * Rnd + 1)
Temp = Weekdays(RndIndex)
Weekdays(RndIndex) = Weekdays(i)
Weekdays(i) = Temp
Next
RandomizeDates = Application.WorksheetFunction.Transpose(Weekdays)
End Function
3. Uložte kód a zavřete okno, abyste se vrátili zpět do svého listu, a zadejte tento vzorec= RandomizeDates (2014) do buňky a stiskněte vstoupit a přetáhněte rukojeť výplně na požadovaný rozsah. Viz screenshot:
Generujte pouze náhodný den v týdnu nebo pouze náhodný víkend s programem Kutools pro Excel
Po instalace zdarma Kutools pro Excel, prosím, postupujte takto:
1. Vyberte rozsah, který chcete generovat ve všední dny nebo víkendy, a poté klikněte na Kutools > Vložte náhodná data. Viz snímek obrazovky:
2. V Vložte náhodná data dialog, klepněte na tlačítko Datum kartu a poté tlačítko kalendáře vyberte požadované počáteční a konečné datum a poté zaškrtněte Pracovní den or Víkend možnost, kterou potřebujete, pokud chcete vygenerovat jedinečné datum, můžete zkontrolovat Unikátní volba. Viz screenshot:
3. cvaknutí Ok pro použití a zavření dialogového okna se ve výběru vygenerují jedinečná víkendová data.
Tip: Pokud máte povoleno vkládat duplikáty dat, zrušte zaškrtnutí Unikátní hodnoty v dialogu
Pomocí funkce Vložit náhodná data můžete také náhodně vybrat celé číslo, čas, řetězec a vlastní seznam. Klikněte zde pro více informací.
Nejlepší nástroje pro produktivitu v kanceláři
Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času. Kliknutím sem získáte funkci, kterou nejvíce potřebujete...
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 o 50%a snižuje stovky kliknutí myší každý den!