Neste artigo você aprenderá como gerar dados aleatórios no Excel passo-a-passo com a função Python do Excel PY.
Download Planilha de Dados Aleatórios no Excel
Realize o download da planilha de cálculo de idade no Excel neste botão abaixo. Basta se inscrever na nossa newsletter gratuita para o download automático.
Gerar Dados Aleatórios no Excel para Teste
Em muitos trabalhos no Excel temos a necessidade de ter dados para analisar simular o projeto antes de ter dados reais.
Para isso criamos uma solução feita em Excel 365 utilizando a função PY do Excel.
Para isso usamos uma função PY do Excel Python Excel.
A função que usamos no Excel foi a biblioteca Random.
Abaixo o código pronto para a geração de uma tabela de dados aleatória no Excel.
import pandas as pd
import random
from datetime import datetime, timedelta
# Gerando dados fictícios para a tabela "Controle de Projetos e Tarefas"
tipos_projeto = ["Desenvolvimento", "Marketing", "Administrativo"]
responsaveis = ["Ana", "Bruno", "Carlos", "Daniela", "Eduardo", "Fernanda"]
status_tarefa = ["A Fazer", "Em Andamento", "Concluído", "Cancelado"]
# Criando uma lista de 20 registros fictícios
dados = []
for _ in range(5000):
data_tarefa = datetime.today() - timedelta(days=random.randint(1, 60))
tipo_projeto = random.choice(tipos_projeto)
responsavel = random.choice(responsaveis)
horas_trabalhadas = round(random.uniform(1, 40), 1)
custo_estimado = round(horas_trabalhadas * random.uniform(50, 150), 2)
prazo_final = data_tarefa + timedelta(days=random.randint(5, 30))
status = random.choice(status_tarefa)
dados.append([
data_tarefa.strftime("%d/%m/%Y"),
tipo_projeto,
responsavel,
horas_trabalhadas,
custo_estimado,
prazo_final.strftime("%d/%m/%Y"),
status
])
# Criando DataFrame
df = pd.DataFrame(dados, columns=[
"Data da Tarefa", "Tipo de Projeto", "Nome do Responsável",
"Horas Trabalhadas", "Custo Estimado", "Prazo Final", "Status da Tarefa"
])
# Retornando o DataFrame (no Python do Excel, basta retornar que ele aparece na célula)
df
Como Alterar para Gerar Dados Aleatórios
No código Python nós temos as listas de dados que desejamos que sejam aleatórias na tabela.
No exemplo temos uma tabela de projetos, então criamos uma coluna de Tipo de projeto, responsáveis e status da tarefa.
Para cada lista de dados que será gerada aleatoriamente nós colocamos os dados de textos separados por vírgula.
tipos_projeto = [“Desenvolvimento”, “Marketing”, “Administrativo”]
responsaveis = [“Ana”, “Bruno”, “Carlos”, “Daniela”, “Eduardo”, “Fernanda”]
status_tarefa = [“A Fazer”, “Em Andamento”, “Concluído”, “Cancelado”]
Dentro do código nós criamos as colunas com os dados aleatórios que desejamos.
Veja que para gerar o campo de data_tarefa aleatório nós colocamos datetime.today() – timedelta(days=random.randint(1, 60)), desta forma gerando aleatoriamente os dados de data conforme um período de hoje menos 60 dias.
E no campo de tipo_projeto, um valor randômico usando a função random.choice, então se quiser dados aleatórios conforme uma lista use esta função.
Para horas aleatórias utilizamos o código round(random.uniform(1, 40), 1), nele temos um valor uniforme e randômico de horas.
Também é possível realizar cálculos utilizando os valores já calculados como temos aqui custo_estimado = round(horas_trabalhadas * random.uniform(50, 150), 2), aonde é feita a multiplicação das horas trabalhadas por um custo aleatório.
data_tarefa = datetime.today() - timedelta(days=random.randint(1, 60))
tipo_projeto = random.choice(tipos_projeto)
responsavel = random.choice(responsaveis)
horas_trabalhadas = round(random.uniform(1, 40), 1)
custo_estimado = round(horas_trabalhadas * random.uniform(50, 150), 2)
prazo_final = data_tarefa + timedelta(days=random.randint(5, 30))
status = random.choice(status_tarefa)
Por fim temos os dados gerados em uma tabela no Excel usando o append.
dados.append([
data_tarefa.strftime("%d/%m/%Y"),
tipo_projeto,
responsavel,
horas_trabalhadas,
custo_estimado,
prazo_final.strftime("%d/%m/%Y"),
status
])
Download Planilha de Dados Aleatórios no Excel
Realize o download da planilha de cálculo de idade no Excel neste botão abaixo. Basta se inscrever na nossa newsletter gratuita para o download automático.