Sistema de Cadastro de Clientes com Excel como Banco de Dados ||
HTML-код
- Опубликовано: 15 сен 2024
- Fala Pythonista do canal, vamos a mais um projeto aqui no canal e desta vez vamos criar juntos do absoluto zero um sistema que vai te ajudar a cadastrar os dados dos seus clientes na sua folha exel, isso mesmo, estamos trazendo um video bem bacana que te vai ajudar a integrar os seus dados python no exel. Vamos usar neste projeto o python, customtkinter, e o exel.
COMANDOS DE INSTALACAO
Use o pip no seu terminal, se for windows por exemplo e o CMD, e istale as feramentas abaixo pelos comandos pip.
=CustomTkinter::::::: pip install customtkinter
=OpenPyXl:::::::::::::::: pip install openpyxl
=PathLib:::::::::::::::::::: pip install pathlib
Ajude o canal a crescer, e juntos vamos crescer.
Aula e projeto incríveis! Gostaria que este projeto incluísse três pontos adicionais: 'Vincular a um banco de dados e gerar um PDF', 'Transformar o projeto em um executável', e 'Tornar a interface responsiva'. Isso tornaria o projeto completo e de grande valor para o aprendizado.
Suas aulas são muitas interessantes. Queria fazer uma sugestão de TEMA: TRABALHANDO COM DATAS no Phyton. É difícil achar uma aula que explique como formatar uma data, somar datas, definir um campo data.
É uma super ideia sabe, tenho que fazer um video sobre isso!
Mas é super fácil!
Muito obrigado Professor, com certeza uma forma muito simples de aprender e com muita utilidade, ja estou aplicando, continue... com certeza, ja transformar muitas vida com suas aulas!
Parabéns prezado amigo pelo conteúdo excelente. Vídeo-aula que está me ajudando muito a entrar no mercado da programação em Python.
Parabéns pelo conteúdo, faço curso de python, mas confesso que estou aprendendo mais com suas aulas do que com o curso...
Wow... isso é uma maravilha 😍😉 bons estudos ai meu caro!
Eu aprendi mais sozinho, do que em cursos, mas curso você têm um certificado, pelo menos. Mas o aprendizado e habilidade são individuais. Na real você aprende tudo na documentação.
Muito show esse app, uma verdadeira aula de programação com cases realistas. Saudações do Brasil!!!
Ainda, não terminei de assistir. Mas já estou achando sensacional essa aula.. Que delicia da aula....Parabéns...
Cara, eu acabei de iniciar o vídeo, e gostaria de agradecer pela dedicação em compartilhar conhecimento.
maravilha. gostei e preciso muito dessas aulas
saudações de SP - Brasil! Continua gravando sim, parabens!
De angola parabéns mano muita forca óptima trabalho só agora descobri o teu estou a gostar Mano 💌
Maravilha irmão kkkk, bons estudos aí. De Moçambique, com muito amor!
Muito Bom o video! Ajudou bastante a entender mais o customtkinter e o openpyxl
Professor, suas aulas são ótimas.
Uma sugestão, ensina a transformar esses códigos em um executável tbm ...
Fico muito grato por seus ensinamentos.
Poderei trazer um projeto ate ao executável. Obrigado e bons estudos 💥🚀
@@setprogramacao Eu que agradeço professor 🤝👨💻
Cara, muito obrigado, sei que vou aprender muito com seus conteúdos!
Excelente conteúdo, Obrigado!
seus video são legais, voce podia fazer uma play list so de customtkinter, ensinando tudo sobre o custom tkinter
Ja tem playlist em andamento aqui no canal de customtkinter 😉
Maravillha. Gostei meu caro professor.
sistema interessante, seria legal adicionar uma opção para verificar as informações dos clientes diretamente no sistema
SHOW DE BOLA.. GOSTEI MUITO
Boa tarde professor.
Seu video e fantástico,
Poderia escinar a como colocar uma treeview nesse projeto
Parabés pelo conteúdo.
Sensacional...
Meus Parabéns, muito boa a aula que vi (apenas uma, mas verei mais) ! Gostaria de fazer uma pergunta, se há algum exemplo em alguma aula do canal de como colocar icone na janela?
Se não, teria alguma forma de me dar uma ajuda com isso? Muito grato!
E assim que possível irei colaborar com o canal, para que continues com ótimos vídeos!
Muito top mesmo parabéns!
Muito show de bola!
Assistindo mano... parabéns!
Conteudo excelente!!!!
Parabéns 🎉
Olá! Muito boa a aula! A proposito... Eu consigo fazer com que as informações inseridas nessa dashboard vão para células específicas de uma planilha? Porque eu tenho um modelo de planilha que preciso seguir e cada informação precisa estar em uma célula certa..
Sim tem como, você pode usar o Pandas pra manipular o excel de acordo com o que precisa.
Parabéns
maravilha, já fiz aparecer a janela, rsrs
Boa aula...como fazer para inserir dados em uma lista no SharePoint com sistema python?
Mais um inscrito muito bom
Showwww de bola ganhou mais um inscrito.... pode me dizer de como faço pra cada que q clicar em salvar gerar um arquivo xlsx...
Porque quero criar um programa de cadastro ... ex...
Técnico X
Saiu com material X,Y,B
Quantidade do que ele está levando
Tem q ter data
E um pequeno termo já cadastrado com nome do técnico dizendo que ele é responsável pelo material que está pegando.
Vou imprimir tbm mas através do dados inserido que foram pro arquivo xlsx
Não é nem programa de estoque
É só pra dar saída do material. Queria por uma lista de material dentro do programa pra quando clicar ele já cadastrando e quando salvar ir pro arquivo
Professor, meu código sempre está dando erro ao importar o customtkinter, poderia me ajudar?
Tem e instala o pacote "pip install customtkinter"
também seria interessante fazer o programa fechar altomaticamente no excel
Alguem sabe me dizer se esse projeto, tem todos esses assuntos aqui: Classes, objetos, variáveis de instância, métodos Herança, sobrecarga de operadores, polimorfismo, diagrama de classes, decoradores, interfaces, classes abstratas e exceções.
como faz pra ter esse telinha e ver como ta ficando o programa???
Excelente conteúdo. Com relação ao problema do ficheiro aberto, não seria possível colocar uma função na qual ele o fechasse caso aberto? Outra pergunta; em um projeto onde houvesse várias abas na planilha, sheet1, sheet2, sheet3... seria possível identificar-las ao invés de usar a aba ativa? Grato por compartilhar seus conhecimentos e sou o mais novo inscrito no canal.
É sim tudo isso que perguntou possível no python. Vou anotar as recomendações, e veremos se trazemos um projecto que supri tudo isso. Abraço
@@setprogramacao muito obrigado por responder.
Tava tentando fazer, mas não consegui fazer as importações do início do código. Me dava erro no comando pip
o meu eu fui fazendo passo a passo e as caixas nao aparece a unica que a parece e a de mudar o tema
muito obrigado1
Pergunta, supondo que ao invés de ter um seletor quisesse trabalhar com checkbox. Como faria para permitir que o usuário selecione apenas uma delas?
Radio buton va na documentação e observe a exemplo lá,
Teria de alguma forma como trazer informações da planilha excel para o tkinter?
UPUPUPUPUPUPUUP
Parabéns pelo conteúdo, estou iniciando do zero agora em Python e nao tinha encontrado nenhum exemplo que trouxesse esse sistema de cadastro com o excel, que era justamente o qu procurava. Uma dúvida bem leiga.. Um pc que mao tem instalado python consegue receber o aplicativo apenas?.
Vai ter que usar o cx_freeze para transformar em exe
Podes também utilizar o inno setup compiler para pegar seu exe e transformar em instalador totalmente grátis!
Obrigado pelo conteúdo meu amigo, mas eu queria compartilhar o sistema de cadastro com colegas de trabalho e conecta ele a um BD único. É possível?
É possivel sim.
Quando coloco esse textvariable= "name_value", lá no meio da erro :(
quando eu faço o ultimo passo para tirar o quadrado detrás do titulo, ele some com todos os outros textos...
Usa o bg_color com a mesma cor do frame, dar super certo ...
Não consegui aqui. Poderia me explicar?@@dan_barreira
title = ctk.CTkLabel(frame, text="Sistema de Gestão de Clientes", font=("Century gothic bold", 24), text_color="#fff", bg_color="teal").place(x=190, y=10)@@ViniciusOliveira-ff5vi
Muito obrigado! Funcionou legal!@@dan_barreira
@@dan_barreira Muito obrigado! estava quebrando a cabeça com isso.
Pessoal, estou tendo um problema com o excell como banco de dados "ValueError: Cannot convert to Excel" alguem poderia me ajudar?
Bom dia estou com mesmo erro reportado por uma amigo aqui no chat, e no meu caso está com maiscula, alguém consegue me ajudar
AttributeError: 'WindowsPath' object has no attribute 'Workbook'
verifica como declarado a biblioteca
ola bom dia,, eu consigo solocar uma tela de login antes dessa tela??? e possivel
Olá professor!! Consigo transformar o programa em Mobile?? De multiplataformas ?
Parabéns pelo conteúdo! Fiz o mesmo projeto, só que ele tá apresentando esse erro attributeerror: 'windowspath' object has no attribute 'workbook'. Como corrigir?
Conseguiu resolver?
ao importar eu escrevi minusculo workbook mas e Workbook
oi , to com probleminha, declarando as Entrys, nao aceita o argumento "self"no codigo porque?
e obrigado ..
Qual erro está dar?
qual o nome desse theme do vscde amigo?
Como faz pra colar o icon na janela, se usa iconbitmap
digitei o codigo e aparece este erro
No module named 'packaging' alguem pode me ajudar resolver
se eu fizer isso e meu arquivo estiver em um google drive, se eu rodar esse programa em qualquer PC com acesso ao drive terei um "banco de dados em nuvem" ?
eu coloco .cell porém não acontece nada, o sistema não relaciona e no fim gera o erro: TypeError: Worksheet.cell() got an unexpected keyword argument 'collumn' pode me ajudar?
Manda print do seu código no instagram pelo. @setprogramacao
@@setprogramacao mandei no direct lá
professor agora como que eu torno ele exe, para mandar para uma pessoa que não tem o python no computador
Tens que instalar o pyinstaller pelo pip, e converter. Infelizmente ainda não temos vídeo no canal que fala disso!
@@setprogramacaopyinstaller e reconhecido como falso viros ,e bom utilizar cx_freeze que e ate mais rápido
qual tema você usa?
Como eu faço para entregar para alguem
Terás que transformar para executável.
Podes fazer isso com o pyinstall
alguem pode botar esse projeto no git hub e disponibilizar?
tem como mandar o codigo?
Está no github esse projeto?
Alguém me ajuda a achar o erro?
import customtkinter as ctk
from tkinter import *
from tkinter import messagebox
import openpyxl, xlrd
import pathlib
from openpyxl import Workbook
ctk.set_appearance_mode("Systen")
ctk.set_default_color_theme("blue")
class App(ctk.CTk):
def __init__(self):
super().__init__()
self.layout_config()
self.appearence()
self.todo_sistema()
def layout_config(self):
self.title("GESTOR DE CLIENTES - BRAGA FUTURE")
self.geometry("700x500")
def appearence(self):
self.lb_apm = ctk.CTkLabel(self, text="Tema", bg_color= "transparent", text_color= ['#000', '#fff']).place(x=50, y= 430)
self.opt_apm = ctk.CTkOptionMenu(self, values=["Light", "Dark", "System"], command= self.change_apm).place(x=50, y=460)
def todo_sistema(self):
frame = ctk.CTkFrame(self, width=700, height=50, corner_radius=0, bg_color="teal", fg_color="teal").place(x=0, y=10)
title = ctk.CTkLabel(frame, text="GESTOR DE CLIENTES", font=("Century Gothic bold", 24), text_color="#fff").place(x=190, y=10)
span = ctk.CTkLabel(frame, text= "Adicionar cliente", font=("Century Gothic bold", 16), text_color=["#000", "#fff"]).place(x=50, y=70)
ficheiro = pathlib.Path("Cliente.xlsx")
if ficheiro.exists():
pass
else:
ficheiro=Workbook()
folha = ficheiro.active
folha['A1'] = "Nome"
folha['B1'] = "WhatsApp"
folha['C1'] = "Vencimento"
folha['D1'] = "Endereço"
folha['E1'] = "Observações"
ficheiro.save("Clientes.xlsx")
def submit():
# Pegando os dados dos entrys
name = name_value.get()
contact = contact_value()
vencimento = vencimento_value.get()
address = address_value.get()
obs = obs_entry.get(0.0, END)
ficheiro = openpyxl.load_workbook('Clientes.xlsx')
folha = ficheiro.active
folha.cell(column=1,row=folha.max_row+1, value=name)
folha.cell(column=2,row=folha.max_row, value=contact)
folha.cell(column=3,row=folha.max_row, value=vencimento)
folha.cell(column=4,row=folha.max_row, value=address)
folha.cell(column=5,row=folha.max_row, value=obs)
ficheiro.save(r"Cliente.xlsx")
messagebox.showinfo("Sistema", "Dados salvos com sucesso!")
def clear():
name_value.set("")
contact_value.set("")
vencimento_value.set("")
address_value.set("")
obs_entry.delete(0.0, END)
#Texts variables
name_value = StringVar()
contact_value = StringVar()
vencimento_value = StringVar()
address_value = StringVar()
#Entrys
name_entry = ctk.CTkEntry(self, width=350, textvariable= "name_value", font=("Century Gohtic bolde", 16), fg_color="transparent").place(x=50, y= 150)
contact_entry = ctk.CTkEntry(self, width=200, textvariable= "contact_value", font=("Century Gohtic bolde", 16), fg_color="transparent").place(x=450, y=150)
vencimento_entry = ctk.CTkEntry(self, width=200, textvariable= "vencimento_value", font=("Century Gohtic bolde", 16), fg_color="transparent").place(x=450, y=220)
address_entry = ctk.CTkEntry(self, width=350, textvariable= "address_value", font=("Century Gohtic bolde", 16), fg_color="transparent").place(x=50, y=220)
#Entrada de observações
obs_entry = ctk.CTkTextbox(self, width=470, height=150, font=("arial", 18), border_color="#aaa", border_width=2, fg_color="transparent").place(x=180, y=260)
#Labels
lb_name = ctk.CTkLabel(frame, text= "Nome:", font=("Century Gothic bold", 16), text_color=["#000", "#fff"]).place(x=50, y=120)
lb_contact = ctk.CTkLabel(frame, text= "WhatApp:", font=("Century Gothic bold", 16), text_color=["#000", "#fff"]).place(x=450, y=120)
lb_vencimento = ctk.CTkLabel(frame, text= "Vencimento:", font=("Century Gothic bold", 16), text_color=["#000", "#fff"]).place(x=450, y=190)
lb_address = ctk.CTkLabel(frame, text= "Endereço: ", font=("Century Gothic bold", 16), text_color=["#000", "#fff"]).place(x=50, y=190)
lb_obs = ctk.CTkLabel(frame, text= "Observações: ", font=("Century Gothic bold", 16), text_color=["#000", "#fff"]).place(x=50, y=260)
btn_submit = ctk.CTkButton(self, text="Salvar dados".upper(), command=submit, fg_color="#151", hover_color="#131").place(x=275, y=460)
btn_submit = ctk.CTkButton(self, text="Limpar campos".upper(), command=clear, fg_color="#555", hover_color="#333").place(x=500, y=460)
def change_apm(self, nova_aparencia):
ctk.set_appearance_mode(nova_aparencia)
if __name__=="__main__":
app = App()
app.mainloop()
Este projeto está no GitHub ?
É possível compartilhar seu GitHub?
Nao esta!
@@setprogramacao É possível compartilhar o GitHub e subir o projeto ?