教師は常に完了する必要のあるタスクがたくさんあります。 彼らは明日のクラスのためにメモを準備し、学生の成績を追跡し、トップマネジメントのためにレポートを準備する必要があります。 マークの入力を簡単な作業にしましょう。
ダウンロード
ソフトウェアをできるだけ早く使い始めたい場合は、以下の方法があります。
それ以外の場合、DIYをしたい場合は、以下の内容を読むことができます。
GUIを準備しましょう
これらの画像に示されているように、必要なシートを使用してツールを準備します。
| シート名 | 詳細説明 |
| 入門 | これはマーク入力用のGUIです。 |
| データベース | このシートはデータベースとして機能し、学生のマークを保持します |
| リスト | このシートには、ドロップダウンの作成に使用されるデータが含まれています。 |
| 生徒 | このシートは、さまざまな生徒をそれぞれのクラスにマップしたものです。 |
VBAプロジェクトウィンドウから、ここに示すようにシートの名前を変更します。
機能させましょう
マクロを新しいモジュールにコピーし、マクロをそれぞれのボタンにアタッチします。
| マクロ | ボタンに取り付ける | 詳細説明 |
| クラス_ドロップダウン | – | このマクロは、「クラス」のドロップダウンを作成します |
| セクション_ドロップダウン | – | このマクロは、「セクション」のドロップダウンを作成します |
| 件名_ドロップダウン | – | このマクロは、「件名」のドロップダウンを作成します |
| リストの表示 | リストを表示する | このマクロは、選択したクラスとセクションの生徒を表示します |
| データベースに追加 | 送信 | このマクロは、マークエントリをデータベースシートにアップロードします。 |
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
微調整する
このスクリプトを使用すると、非常に基本的なマーク入力システムを作成できます。 ただし、「データベース」シートのデータを使用して、微調整して分析レポートを作成することはできます。 データベースシートのバックアップを作成することをお勧めします。 これはあなたが回復するのに役立ちます 破損したxlsx シート。
著者紹介:
Nick Vipondは、のデータ復旧の専門家です。 DataNumen、Inc。は、以下を含むデータ復旧技術の世界的リーダーです。 壊れた言葉 と見通し回復ソフトウェア製品。 詳細については、次のWebサイトをご覧ください。 WWW。datanumen.com.



