Como gerar dias da semana ou fins de semana aleatórios no Excel?
Este tutorial está falando sobre gerar apenas dias de semana aleatórios ou apenas datas de fim de semana aleatórias no Excel. Siga as etapas abaixo para obter mais detalhes.
Gerar apenas dias da semana aleatórios no Excel
Gere apenas dias da semana aleatórios ou apenas fins de semana aleatórios com o Kutools para Excel
Gerar apenas dias da semana aleatórios no Excel
No Excel, existem dois métodos que podem ajudá-lo a randomizar apenas os dias da semana em um intervalo de datas conforme necessário.
Método 1 gera dia da semana aleatório com fórmula
Selecione uma célula e digite esta fórmula = DATA (2014, 1, 1) + GRANDE (SE (DIA DA SEMANA (DATA (2014, 1, 1) + LINHA ($ 1: $ 365) -1, 2) <6, LIN ($ 1: $ 365) -1, "" ), RANDBETWEEN (1, SUM (- (WEEKDAY (DATE (2014, 1, 1) + ROW ($ 1: $ 365) -1, 2) <6)))), então aperte Shift + Ctrl + Enter simultaneamente e, em seguida, arraste a alça de preenchimento para um intervalo que deseja gerar o dia da semana. Veja a imagem:
Dica:
1. Se você deseja gerar dias da semana aleatórios exclusivos, você pode usar esta fórmula =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))))) e lembre-se de pressionar Shift + Ctrl + Enter.
2. Nas fórmulas acima, 2014,1,1 é a data de início de seu intervalo de datas necessário, 365 é o número de dias em seu intervalo de datas, você pode alterá-los conforme necessário.
3. Você não pode colocar a fórmula gerando dias da semana aleatórios exclusivos em A1.
Método 2 gera dia da semana aleatório em um ano com VBA
Se você deseja randomizar os dias da semana em um ano e está familiarizado com o VBA, pode fazer o seguinte:
1. Pressione Alt + F11 chaves para abrir Microsoft Visual Basic para Aplicações janela.
2. Clique inserção > Móduloe cole o código VBA abaixo nas janelas pop-up.
VBA: Randomize dia da semana dentro de um ano.
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. Salve o código e feche a janela para voltar à planilha e digite esta fórmula= RandomizeDates (2014) em uma célula, então pressione Entrar e arraste a alça de preenchimento para um intervalo de que você precisa. Veja a imagem:
Gere apenas dias da semana aleatórios ou apenas fins de semana aleatórios com o Kutools para Excel
Kutools for Excel, com mais de 300 funções úteis, tornam seus trabalhos mais fáceis. |
Depois de instalação grátis Kutools para Excel, faça o seguinte:
1. Selecione um intervalo que você deseja gerar dias da semana ou datas de fim de semana e clique em Kutools > Inserir dados aleatórios. Veja a imagem:
2. No Inserir dados aleatórios diálogo, clique em Data guia, e então botão de calendário para selecionar uma data de início e término que você deseja, em seguida, verifique Dia de trabalho or Fim de semana opção que você precisa, se você deseja gerar uma data única, você pode marcar Único opção. Veja a imagem:
3. Clique Ok para aplicar e fechar a caixa de diálogo, na seleção, são geradas as datas de fim de semana exclusivas.
Dica: Se você tem permissão para inserir dados duplicados, apenas desmarque Valores Únicos no diálogo
Com a função Inserir dados aleatórios, você também pode tornar aleatório inteiro, hora, string e lista personalizada. Clique aqui para mais informações.
Melhores ferramentas de produtividade de escritório
Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
Office Tab traz interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!