, , , ,

零成本用excel製作,記錄學生進出入校表單

在工作表,重新命名為(輸入表)

新增工作表命名為(stu)

在stu表單內輸入學生資料,學號、班級、座號、姓名

A1、B1、C1、D1、E1:合併儲存格

A2、B2、C2、D2、E2:輸入學號、班級、座號、姓名

儲存格格式/外框將直線、橫線標上

完成如下表格

設定在A3輸入學號後,E3可顯示入校時間

在E3輸入如下公式 =IF(A3<>””, IF(E3=””, NOW(), E3), “”)

將公式複製E列(E3~E20)

注意(公式法;第一次輸入即鎖定時間)

用途:當 A 欄有輸入時,E 欄自動蓋上「當下日期時間」,之後不再改變。
步驟:

  1. 啟用反覆運算
     Windows:檔案 → 選項 → 公式 → 勾選「啟用反覆運算」,最大反覆次數設 1。
     Mac:Excel 偏好設定 → 計算 → 勾選「反覆運算」,最大反覆次數設 1。
  2. 在 E2 輸入:
     =IF(A2<>””, IF(E2=””, NOW(), E2), “”)
     → 將 E2 向下填滿整欄(或轉成表格後自動套用)。
  3. 設定顯示格式(E 欄全選)→ 儲存格格式 → 自訂:
     yyyy/mm/dd hh:mm:ss
    效果:A2 第一次填寫內容時,E2 會記錄當下時間;日後即使重算,E2 也不變。若要重置,清空 E2 後再改動 A2。

注意E列格式設定為日期

設定在A3輸入學號後,B3可顯示班級

在B3輸入如下公式=IF(A3=””,””,IFERROR(VLOOKUP(A3,stu!A:D,2,FALSE),””))

A列格式設定為(文字)很重要

完成設定後如下圖

依序設定C3、D3公式

C3公式如下=IF(A3=””,””,IFERROR(VLOOKUP(A3,stu!A:D,3,FALSE),””))

D3公式如下=IF(A3=””,””,IFERROR(VLOOKUP(A3,stu!A:D,4,FALSE),””))

將公式複製C、D列

現在A3輸入學號後,可顯示班級、座號、姓名、入校時間

完成記錄學生入校表單

公式解釋如下:

這條公式放在 B3:

=IF(A3=””,””,IFERROR(VLOOKUP(A3, stu!A:D, 2, FALSE), “”))

逐段解釋:

  1. IF(A3=””,””, … )
  • 檢查 A3 是否空白。
  • 若 A3 空白 → 直接回傳空字串 “”(B3 也顯示空白)。
  • 若 A3 有值 → 繼續執行後面的查找。
  1. VLOOKUP(A3, stu!A:D, 2, FALSE)
  • 到工作表 stu 的範圍 A:D 內找 A 欄中與 A3 完全相同的學號。
  • 2:表示從查找範圍的第 2 欄(也就是 stu 的 B 欄:班級)取回結果。
  • FALSE:要求「完全相符」,避免抓到近似值。
  1. IFERROR( … , “” )
  • 若 VLOOKUP 找不到(原本會出現 #N/A)或其他錯誤,改回傳空字串 “”,讓 B3 保持空白、畫面乾淨。

合在一起的作用

  • A 欄輸入學號 → 在 stu 表找同學號 → 抓回 班級顯示在 B 欄;
  • A 欄空白或查無此學號 → B 欄保持空白,不顯示錯誤。

最後將stu表隱藏,這樣就不會更動到學生資料,以後要增加學生資料,只要取消隱藏即可

舉一反三也可以依此方式製作校外人士進出入校園表單(可用身分證字號後6碼)

以上有個缺點,就是容易刪除表格內的公式

下一篇介紹利用VBA公式就不會被刪除