import openpyxl import os import time Definindo os diretórios DIRETORIO_APRENDIZADO = "D:\projeto planilhas\aprendizado" DIRETORIO_BASE_CONHECIMENTO = "D:\projeto planilhas\base de conhecimento" DIRETORIO_LOG_ERROS = "D:\projeto planilhas\log de erros" DIRETORIO_NOVAS_PLANILHAS = "D:\projeto planilhas\novas planilhas" Verifica se o diretório para novas planilhas existe, caso contrário, cria if not os.path.exists(DIRETORIO_NOVAS_PLANILHAS): os.makedirs(DIRETORIO_NOVAS_PLANILHAS) Lista de comandos possíveis comandos_possiveis = [ "gere uma planilha de orçamentos", "gere uma planilha de orçamento", "gere uma planilha de vendas", "gere uma planilha de cadastro de produto", "gere uma planilha de cadastro de cliente", "gere uma planilha de controle de estoque", "gere uma planilha de fluxo de caixa", "gere uma planilha de vendas com dashboard", "gere uma planilha de orçamento - não terá dashboard", "gere uma planilha de análise de vendas", "gere uma planilha de despesas mensais", "gere uma planilha de controle de projetos", "gere uma planilha de planejamento estratégico", "gere uma planilha de relatórios de vendas", "gere uma planilha de controle de fornecedores", "gere uma planilha de cadastro de funcionários", "gere uma planilha de análise financeira", "gere uma planilha de contas a pagar", "gere uma planilha de contas a receber", "gere uma planilha de metas e objetivos", "gere uma planilha de planejamento de eventos", "gere uma planilha de análise de mercado", "gere uma planilha de cadastro de clientes com dashboard", "gere uma planilha de inventário de produtos", "gere uma planilha de planejamento de marketing", "gere uma planilha de acompanhamento de vendas", "gere uma planilha de fluxo de caixa com dashboard", "gere uma planilha de projeção de receitas", "gere uma planilha de planejamento financeiro", "gere uma planilha de planejamento de recursos humanos", "gere uma planilha de relatórios de desempenho", "gere uma planilha de controle de qualidade", "gere uma planilha de cronograma de tarefas", "gere uma planilha de controle de horas trabalhadas", "gere uma planilha de planejamento de viagens", "gere uma planilha de acompanhamento de indicadores", "gere uma planilha de cadastro de produtos - não terá dashboard", "gere uma planilha de análise de custos", "gere uma planilha de comparação de preços", "gere uma planilha de projeção de vendas", "gere uma planilha de controle de receitas e despesas", "gere uma planilha de resultados financeiros", "gere uma planilha de avaliação de desempenho", "gere uma planilha de planejamento de férias", "gere uma planilha de orçamento familiar", "gere uma planilha de gestão de riscos", "gere uma planilha de análise SWOT", "gere uma planilha de controle de investimentos", "gere uma planilha de gestão de tempo", "gere uma planilha de avaliação de projetos", "gere uma planilha de cronograma de eventos", "gere uma planilha de análise de tendências", "gere uma planilha de gestão de relacionamento com clientes", "gere uma planilha de planejamento de vendas", "gere uma planilha de controle de despesas", "gere uma planilha de metas pessoais", "gere uma planilha de cronograma escolar", "gere uma planilha de controle de saúde financeira", "gere uma planilha de orçamento de projeto", "gere uma planilha de planejamento de produção", "gere uma planilha de gestão de qualidade", "gere uma planilha de análise de performance", "gere uma planilha de gestão de tempo com dashboard", "gere uma planilha de controle de chamados", "gere uma planilha de avaliação de fornecedores", "gere uma planilha de planejamento de compras", "gere uma planilha de acompanhamento de projetos", "gere uma planilha de controle de estoque com dashboard", "gere uma planilha de inventário com dashboard", "gere uma planilha de gestão de equipe", "gere uma planilha de análise de despesas", "gere uma planilha de controle de custos", "gere uma planilha de planejamento de mídia", "gere uma planilha de cadastro de serviços", "gere uma planilha de resultados de campanhas", "gere uma planilha de controle de faturamento", "gere uma planilha de cronograma de atividades", "gere uma planilha de acompanhamento de tarefas", "gere uma planilha de planejamento de receitas", "gere uma planilha de gestão de fornecedores", "gere uma planilha de controle de metas", "gere uma planilha de avaliação de resultados", "gere uma planilha de controle de estoques - não terá dashboard", "gere uma planilha de planejamento de vendas com dashboard", "gere uma planilha de gestão de processos", "gere uma planilha de análise de lucros", "gere uma planilha de controle de tarefas", "gere uma planilha de cadastro de contas", "gere uma planilha de planejamento de despesas", "gere uma planilha de relatórios financeiros", "gere uma planilha de gestão de clientes", "gere uma planilha de controle de doações", "gere uma planilha de metas de vendas", "gere uma planilha de planejamento de projetos", "gere uma planilha de análise de resultados com dashboard", "gere uma planilha de controle de prazos", "gere uma planilha de orçamento de marketing", "gere uma planilha de comparação de despesas", "gere uma planilha de planejamento de auditoria", "gere uma planilha de cadastro de imóveis com dashboard" ] Funções para criar planilhas específicas def criar_planilha(nome_planilha, tipo): wb = openpyxl.Workbook() ws = wb.active ws.title = tipo if tipo == "Orçamento": ws['A1'] = "Categoria" ws['B1'] = "Valor" elif tipo == "Vendas": ws['A1'] = "Produto" ws['B1'] = "Quantidade" ws['C1'] = "Valor" elif tipo == "Cadastro de Produto": ws['A1'] = "Nome do Produto" ws['B1'] = "Preço" elif tipo == "Cadastro de Cliente": ws['A1'] = "Nome do Cliente" ws['B1'] = "Email" elif tipo == "Controle de Estoque": ws['A1'] = "Produto" ws['B1'] = "Quantidade" elif tipo == "Fluxo de Caixa": ws['A1'] = "Data" ws['B1'] = "Descrição" ws['C1'] = "Valor" elif tipo == "Análise de Vendas": ws['A1'] = "Produto" ws['B1'] = "Quantidade Vendida" ws['C1'] = "Valor Total" # Adicione mais condições conforme necessário para cada tipo de planilha wb.save(os.path.join(DIRETORIO_NOVAS_PLANILHAS, f"{nome_planilha}.xlsx")) print(f"Planilha '{nome_planilha}' do tipo '{tipo}' criada.") Função para gerar a planilha com base no comando def gerar_planilha(comando_usuario): comando_usuario = comando_usuario.lower() nome_planilha = input("Digite um nome para a planilha: ").strip() or "Nova_Planilha" if "orçamento" in comando_usuario: criar_planilha(nome_planilha, "Orçamento") elif "vendas" in comando_usuario: criar_planilha(nome_planilha, "Vendas") elif "cadastro de produto" in comando_usuario: criar_planilha(nome_planilha, "Cadastro de Produto") elif "cadastro de cliente" in comando_usuario: criar_planilha(nome_planilha, "Cadastro de Cliente") elif "controle de estoque" in comando_usuario: criar_planilha(nome_planilha, "Controle de Estoque") elif "fluxo de caixa" in comando_usuario: criar_planilha(nome_planilha, "Fluxo de Caixa") elif "análise de vendas" in comando_usuario: criar_planilha(nome_planilha, "Análise de Vendas") # Adicione mais condições conforme necessário para cada tipo de planilha else: print("Comando não reconhecido.") Função para carregar dados da base de conhecimento def carregar_dados_base_conhecimento(pasta_base): dados = [] for file in os.listdir(pasta_base): if file.endswith(".xlsx"): wb = openpyxl.load_workbook(os.path.join(pasta_base, file)) for sheet in wb.sheetnames: ws = wb[sheet] for row in ws.iter_rows(values_only=True): dados.append(row) return dados Função principal def main(): while True: comando_usuario = input("Digite um comando ou 'aprender agora': ") if comando_usuario.lower() == 'aprender agora': aprender_agora() else: gerar_planilha(comando_usuario) # Delay para permitir o processamento time.sleep(2) Função para aprender def aprender_agora(): print("Aprendendo agora...") if name == "main": main() Continue reading...