Os professores sempre têm toneladas de tarefas para concluir. Eles têm que preparar anotações para a aula de amanhã, acompanhar o desempenho dos alunos, preparar relatórios para a alta administração e muito mais. Vamos tornar a entrada de marca uma tarefa fácil para eles.
Faça o download
Se você quiser start para usar o software o mais rápido possível, então você pode:
Caso contrário, se você quiser DIY, pode ler o conteúdo abaixo.
Vamos preparar a GUI
Conforme mostrado nestas imagens, prepare a ferramenta com as folhas necessárias.
Nome da Folha | Descrição |
entrada | Esta é a GUI para entrada de marca. |
banco de dados | Esta folha atua como banco de dados e contém as notas dos alunos |
Lista | Esta planilha possui dados que serão usados para criar menus suspensos. |
Estudantes | Esta folha é os mapas de vários alunos para suas respectivas classes. |
Na janela do projeto VBA, renomeie as planilhas conforme mostrado aqui.
Vamos torná-lo funcional
Copie a macro para um novo módulo e anexe as macros aos seus respectivos botões.
Macro | Anexar ao botão | Descrição |
Class_dropdown | - | Esta macro cria o menu suspenso para “Classe” |
Seção_dropdown | - | Esta macro cria o menu suspenso para “Seção” |
Assunto_dropdown | - | Esta macro cria o menu suspenso para “Assunto” |
Mostrar_Lista | Mostrar lista | Esta macro mostra os Alunos da Turma e Seção Selecionada |
Adicionar_ao_banco de dados | Enviar | Esta macro carrega as entradas de marca na planilha do banco de dados. |
Sub Class_dropdown() Dim lr As Long Dim r As Long lr = lst.Range("A" & Rows.Count).End(xlUp).Row Dim prodlist As String For r = 2 To lr If prodlist = "" Then prodlist = lst.Range("A" & r).Value Else prodlist = prodlist & "," & lst.Range("A" & r).Value End If Next r With entry.Range("C2:D2").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=prodlist .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With End Sub Sub Section_dropdown() Dim lr As Long Dim r As Long lr = lst.Range("B" & Rows.Count).End(xlUp).Row Dim prodlist As String For r = 2 To lr If prodlist = "" Then prodlist = lst.Range("B" & r).Value Else prodlist = prodlist & "," & lst.Range("B" & r).Value End If Next r With entry.Range("G2:H2").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=prodlist .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With End Sub Sub Subject_dropdown() Dim lr As Long Dim r As Long lr = lst.Range("C" & Rows.Count).End(xlUp).Row Dim prodlist As String For r = 2 To lr If prodlist = "" Then prodlist = lst.Range("C" & r).Value Else prodlist = prodlist & "," & lst.Range("C" & r).Value End If Next r With entry.Range("K2:O2").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=prodlist .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With End Sub Sub Show_List() Dim r As Long Dim lr As Long Dim e As Long e = 5 lr = std.Range("A" & Rows.Count).End(xlUp).Row For r = 2 To lr If std.Range("A" & r).Value = entry.Range("C2").Value And std.Range("B" & r).Value = entry.Range("G2").Value Then e = e + 1 entry.Range("B" & e).Value = std.Range("C" & r).Value entry.Range("C" & e).Value = std.Range("D" & r).Value End If Next r End Sub Sub Add_To_Database() Dim r As Long Dim lr As Long Dim e As Long e = 5 lr = entry.Range("B" & Rows.Count).End(xlUp).Row For r = 6 To lr Dim lrind As Long lrind = db.Range("B" & Rows.Count).End(xlUp).Row + 1 db.Range("A" & lrind).Value = entry.Range("C2").Value db.Range("B" & lrind).Value = entry.Range("G2").Value db.Range("C" & lrind).Value = entry.Range("K2").Value db.Range("D" & lrind).Value = entry.Range("C" & r).Value db.Range("E" & lrind).Value = entry.Range("K" & r).Value Next r End Sub
Ajuste-o
Este script permite criar um sistema de entrada de marca muito básico. No entanto, você pode ajustá-lo e criar relatórios analíticos usando dados da planilha “Banco de Dados”. É uma boa prática criar um backup para a folha de banco de dados. Isso o ajudará a recuperar um xlsx corrompido Folha.
Introdução do autor:
Nick Vipond é um especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo palavra corrupta e produtos de software de recuperação do Outlook. Para mais informações visite www.datanumen.com.
Deixe um comentário