返回列表 上一主題 發帖

[發問] 請問出勤系統設計

[發問] 請問出勤系統設計

因應8/1新政策....

嘗試的用Excel 寫一套出勤系統.....大致上 Userform 建立了 3/1

想請問下面三大問題, 目前完成如下圖兩個紅框部分功能..
Q4.png
2016-7-27 15:25


Q1. 要如何將下圖的Userform 寫入Excel 中呢??
使用者將必填的選項填入後, 帶入Excel 表格中, 當中不知道能不能將最後一格的Textbox 就顯示日期格式
Excel A~G 欄都是必填選項
目前三個按鈕 只有[確認] 不知道怎麼寫....也是最重要的核心
Q1.png
2016-7-27 15:14

Q3.png
2016-7-27 15:14


Q2: 在人員編輯這個功能中, 希望能輸入必填選項 , 然後按填入資料那個按鈕(紅框)
就能去搜尋資料庫將紫色框框的資訊都帶出來, 最後紫色框框編輯後, 按確定能將紫色框框儲存到資料庫

綠色框框希望能反黑, 除非有打勾才可以使用, 如果有打勾按下確認後也更新到資料庫中

Q2.png
2016-7-27 15:14


最後就是如果有勾選離職 , 就從資料庫將此人員資料刪除


Q3 : 也就是最重要的更新出勤功能...由於還在設計Userfrom, 及Excel表格....容許小弟後續補上
但這一頁功能就是導入前面的人員資料庫, 然後去做統計加總而已...!!!


人員人力回報表.rar (390.02 KB)

回復 2# yifan2599


   感謝大大的精心設計....另想問一下,
1. 清單方塊能夠讀取資料庫的資訊嗎??
2. 如果秀出資料庫的資訊, 能在清單方塊點兩下 就能編輯嗎??

因為剩下一個功能就是更新出勤....在想要用什麼方式去呈現人員狀況, 並讓使用者去更新出勤狀況

TOP

回復 2# yifan2599


    請問一下, 在人員工號方面我發現有大小寫的分別, 請問能讓他判斷無論輸入大小寫,一律轉換大寫嗎??
再來搜尋方面, 可以讓該Textbox 就讓他輸入無論切換什麼, 打出來就是大寫嗎? 這樣就能避免大小寫的判斷問題

TOP

加入這段程式碼已解決 TextBox3.Text = UCase(TextBox3.Text)

TOP

回復 6# yifan2599


會這樣詢問是因為, 最後一項功能

Q3 : 也就是最重要的更新出勤功能
  如下圖Userfrom 已經拉出來了,
  3-1. 綠框是否能打開就預設當日的日期, 旁邊星期自動判斷帶出來
  3-2. 當選擇編輯組別的同時, 是否能將『人力資料庫』這張Sheet, 如前面選擇的條件(班別/領班/組別)
            在下面的清單方塊中列出來, 如果點選清單按鈕( OptionButton ) 就能自動顯示在清單方塊中,
            則紅框中的『確認組別』按鈕則可以刪除
   3-3. 呈現在清單方塊中的項目, 可否點選兩下, 就能自動帶入藍框所圈選的項目, 藍框中的項目也是從『人力資料庫』這張Sheet
            導入相關資訊, 其中『出勤站別』是導入『人力資料庫』這張Sheet的『主要專長』, 不一樣的地方是可以透過旁邊的按鈕更改(出勤專長)
           ※ 如不可以在清單方塊點兩下就帶入下面資訊, 則可在另設一個按鈕帶入
  3-4. 當按下確認更新, 則存入『出勤資料庫』這張Sheet內, 相對應的欄位, 如圖2
      ※ 圖3 就是導入對應欄位資訊
圖1
Q1.jpg
2016-7-31 02:02

圖2
Q2.jpg
2016-7-31 02:02

圖3
Q3.jpg
2016-7-31 02:02


  3-5. 再加班計算方面, 下圖是否可以系統自行判斷, 如果不行則把此功能建立
          上半年度, VPK休息日是 , V 週六 , P 週日 , K 週二
          下半年度, VPK休息日是 , V 週日 , P 週六 , K 週二
           如上, 加班時數各組計算的日期不同, 如上功能『出勤時數』就要計算休息日(算加班),
                    各組別的休息日+有打勾的填寫的加班時數 = 加班時數
               
Q6.jpg
2016-7-31 02:02


『人員回報』這張Sheet , 日期欄位是否可以系統程式自動轉換月份及日期??
依照A2欄位顯示的月份, 只要更改A2欄的月份, 下面資料會自動導入『出勤資料庫』資料

資料欄A63,B63,D63,E63,F63,G63, 從『人力資料庫』這張Sheet, 導入且自動排序
排序順序:
1. 班別:1ST,2ND,3RD,
2. 領班:A,B,C.....
3. 各領班的組別, 分別 V P K
再來就是依照『出勤資料庫』Sheet所維護的『出勤站別』(G欄)這欄導入所維護的資料
Q4.jpg
2016-7-31 02:02

Q5.jpg
2016-7-31 02:02


最後一頁資料表『整合頁面』, 只會呈現六,日,一,二 這四天的資料, 前面相同資訊一樣系統導入基本資料

如下圖範例
Q7-1.jpg
2016-7-31 02:57


求解....

人員人力回報表_V2.rar (455.51 KB)

TOP

回復  yifan2599


會這樣詢問是因為, 最後一項功能

Q3 : 也就是最重要的更新出勤功能
  如下圖U ...
v03586 發表於 2016-7-31 02:58



    更正整合頁面Sheet 當中內容 如下圖
Q8.png
2016-7-31 13:21

TOP

本帖最後由 v03586 於 2016-8-1 13:08 編輯

回復 9# c_c_lai


    當時設計Userform的時候不知道清單選項能做到什麼效果, 因為我在網路上Youtube 爬文 都要點選按鈕才能出現資料
   因為VPK組資料太多, 就想說各組別,各別顯示才不會亂掉, 清單方塊是從別張Sheet的資料, 點選後帶入下面方塊(紅框),
  之後編輯加班狀態, 至於『出勤站別』主要帶入『主要專長』的資料, 但實際出勤可能因為人力因素改變, 所以旁邊才設按鈕
  讓使用者自行編輯
   
    因為是工廠, 需要輸入她可以操作幾台機器, 才能計算出勤人力可以開啟多少機台, 只有DA需要計算機台, 其他是不用的

TOP

回復 12# c_c_lai


    是的!!! 超強!!!感謝大大,  確認鍵輸入後存入『出勤資料庫』, 跟『人員回報』
   另外加班計算不知道怎麼帶入, 尤其是人員回報 A2欄 不知道能不能做到選擇月份控制日期

TOP

回復 14# c_c_lai

對於前輩的指教...真的很感謝也受惠...因工作性質較為複雜, 無法把心力全心灌入, 才來求指教, 造成不便真的深感抱歉
寫了這段後...把輸入的資料重複跑了10次....
  1. Private Sub CommandButton10_Click()
  2.     Dim x&
  3.     With Worksheets("出勤資料庫")
  4.         For x = 2 To 11

  5.                 .Cells(x, 1) = DA出勤更新.ComboBox2.Value '班別
  6.                 .Cells(x, 2) = DA出勤更新.ComboBox3.Value '領班
  7.                
  8.                 .Cells(x, 4) = DA出勤更新.TextBox2.Value  '工號
  9.                 .Cells(x, 5) = DA出勤更新.Textbox3.Value  '姓名
  10.                 .Cells(x, 6) = DA出勤更新.Textbox4.Value '組別
  11.                 .Cells(x, 7) = DA出勤更新.TextBox5.Value   '出勤站別
  12.                 .Cells(x, 8) = DA出勤更新.ComboBox8.Value '可操機數
  13.                 .Cells(x, 9) = DA出勤更新.TextBox8.Value '出勤時數
  14.                 .Cells(x, 10) = DA出勤更新.ComboBox7.Value '延長加班
  15.                 .Cells(x, 11) = DA出勤更新.TextBox7.Value '加班時數

  16.         Next x
  17.     End With
  18.     Call CommandButton11_Click
  19.     MsgBox "資料更新完成"
  20. End Sub
複製代碼

TOP

本帖最後由 v03586 於 2016-8-3 04:23 編輯

回復 16# c_c_lai


    Overtime 是我的想法沒錯!!感謝協助
   另外可否更新出勤能否寫個防呆功能, 相同日期相同工號已經有輸入過的, 再次輸入時會跳出訊息不能被輸入
   測試的時候發現可以連續輸入相同日期的同一個人資料
   目前只要輸入一筆資料, 確認更新鍵會自動關閉 , 要再按一次清空, 再重新選擇人員, 按鈕才又被打開
    ( 我把 確認更新.Enabled = True )

  另請問如何利用A2欄控制月份?  固定H欄後面會因為月份改變, 星期也更著改變 ( 如紅框 )
  
Q1.png
2016-8-3 04:16

   

A65~G65 是匯入 利用INDEX與MATCH 函數匯入後排序嗎? 還是用Vlookup 呢?
Q2.png
2016-8-3 04:17

我只知道排序的寫法如下...但不知道如何從第65欄開始利用程式排序,  其他維護的資訊是否可利用程式方式帶入呢?
  1. Dim xArea As Range
  2. xArea.Resize(, 7).Sort Key1:=xArea(1, 1), Order1:=xlAscending, _
  3.                        Key2:=xArea(1, 2), Order2:=xlAscending, _
  4.                        Key3:=xArea(1, 7), Order3:=xlAscending, Header:=xlNo
複製代碼
人員人力回報表.rar (399.75 KB)

TOP

        靜思自在 : 有時當思無時苦,好天要積雨來糧。
返回列表 上一主題