Mokytojai visada turi atlikti daugybę užduočių. Jie turi ruošti pastabas rytojaus pamokai, sekti mokinių pasiekimus, rengti ataskaitas aukščiausiajai vadovybei ir dar daugiau. Padarykime, kad ženklo įvedimas jiems būtų lengva užduotis.
Atsisiųsti dabar
Jei norite kuo greičiau pradėti naudoti programinę įrangą, galite:
Atsisiųskite programinę įrangą dabar
Kitu atveju, jei norite pasidaryk pats, galite perskaityti toliau pateiktą turinį.
Paruoškime GUI
Kaip parodyta šiuose paveikslėliuose, paruoškite įrankį su reikalingais lapais.
| Lapo pavadinimas | Aprašymas |
| įrašas | Tai žymų įvedimo GUI. |
| duomenų bazė | Šis lapas veikia kaip duomenų bazė ir saugo mokinių pažymius |
| sąrašas | Šiame lape yra duomenų, kurie bus naudojami kuriant išskleidžiamuosius meniu. |
| Studentai | Šis lapas yra įvairių mokinių susiejimas su atitinkamomis klasėmis. |
VBA projekto lange pervardykite lapus, kaip parodyta čia.
Padarykime jį funkcionalų
Nukopijuokite makrokomandą į naują modulį ir pridėkite makrokomandas prie atitinkamų mygtukų.
| Makro | Pritvirtinkite prie mygtuko | Aprašymas |
| Class_dropdown | - | Ši makrokomanda sukuria išskleidžiamąjį meniu „Klasė“ |
| Section_dropdown | - | Ši makrokomanda sukuria išskleidžiamąjį meniu „Skyrius“ |
| Subject_dropdown | - | Ši makrokomanda sukuria išskleidžiamąjį meniu „Tema“ |
| Rodyti_sąrašą | Rodyti sąrašą | Šioje makrokomandoje rodomi mokiniai iš pasirinktos klasės ir skyriaus |
| Add_To_Database | Siųsti | Šios makrokomandos įkėlimas pažymi įrašus į duomenų bazės lapą. |
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
Pakeiskite
Šis scenarijus leidžia sukurti labai paprastą ženklų įvedimo sistemą. Tačiau galite jį pakoreguoti ir kurti analitines ataskaitas naudodami duomenis iš lapo „Duomenų bazė“. Gera praktika yra sukurti atsarginę duomenų bazės lapo kopiją. Tai padės jums susigrąžinti a sugadintas xlsx lapas.
Autoriaus įvadas:
Nickas Vipondas yra duomenų atkūrimo ekspertas DataNumen, Inc., kuri yra pasaulyje duomenų atkūrimo technologijų lyderė, įskaitant sugadintas žodis ir Outlook atkūrimo programinės įrangos produktai. Norėdami gauti daugiau informacijos, apsilankykite WWW.datanumen.com.



