Lærere har alltid mange oppgaver å fullføre. De må forberede notater til morgendagens klasse, spore elevenes prestasjoner, utarbeide rapporter for toppledelsen og mange flere. La oss gjøre merkeoppføringen til en enkel oppgave for dem.
Last ned nå
Hvis du ønsker å starFor å bruke programvaren så snart som mulig, kan du:
Ellers, hvis du vil gjøre DIY, kan du lese innholdet nedenfor.
La oss forberede GUI
Som vist på disse bildene, klargjør verktøyet med nødvendige ark.
Arknavn | Beskrivelse |
Inngang | Dette er GUI for merkeinnføring. |
Database | Dette arket fungerer som database og holder studentenes karakterer |
Liste | Dette arket har data som vil bli brukt til å lage rullegardinmenyene. |
Studenter | Dette arket kartlegger ulike elever til sine respektive klasser. |
Fra VBA-prosjektvinduet, gi nytt navn til ark som vist her.
La oss gjøre det funksjonelt
Kopier makroen til en ny modul og fest makroer til de respektive knappene.
Makro | Festes til knappen | Beskrivelse |
Class_dropdown | - | Denne makroen oppretter rullegardinmenyen for "Klasse" |
Section_dropdown | - | Denne makroen oppretter rullegardinmenyen for "Seksjon" |
Subject_dropdown | - | Denne makroen lager rullegardinmenyen for "Emne" |
Vis_liste | Vis liste | Denne makroen viser elever fra den valgte klassen og seksjonen |
Add_To_Database | Send | Dette makroopplastingsmerket kommer inn i databasearket. |
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
Juster det
Dette skriptet lar deg lage et veldig grunnleggende merkeregistreringssystem. Du kan imidlertid finpusse den og lage analytiske rapporter ved å bruke data fra arket "Database". Det er en god praksis å lage en sikkerhetskopi for databasearket. Dette vil hjelpe deg å gjenopprette en korrupt xlsx ark.
Forfatterintroduksjon:
Nick Vipond er en datagjenopprettingsekspert innen DataNumen, Inc., som er verdensledende innen datagjenopprettingsteknologier, inkludert korrupte ord og Outlook-programvareprodukter. For mer informasjon besøk www.datanumen. Med.