Board logo

標題: [發問] 外包人力工作紀錄 新手發問! [打印本頁]

作者: lager.master    時間: 2014-8-26 23:38     標題: 外包人力工作紀錄 新手發問!

[attach]19025[/attach]

大家好.  由於公司想看外包商的使用狀況 (請一天多少.做多少事情. 何不合乎成本)
但由於蠻多地方不懂. 所以上來請教大家! 感恩
我想詢問的是.
1.範本(勿更改)裡面. 當日勞務費用的欄位計算. 當日總時間的前提下,當日勞務費用=(時薪*1)+(時薪(10~12小時) * 1.66)+時薪(12小時以上) * 2+勞務管理每人(3.75元/小時 )  要如何寫呢 >"<
2.範本(勿更改)裡面. 效益比的部分, =當日總效益 - 當日勞務費, 問題來了.1/1有做10件事情. 如果我將公式下拉.空白處會出現#Value   ><
3.範本(勿更改)裡面. 上方長條圖如果沒人的日期...還是會顯示出來.  若將日期使用成文字. 則1/1有10項它就會顯示10條.....該如何解決呢
4.主頁中的 "4:所有人員效益""3:個人查詢" 長條圖. 這是主管要看的部分. 該如何讓長條圖可以運作.並能選擇月份...(極大的問題 ><)

由於第一次寫這種表格.問題較多. :'(
作者: GBKEE    時間: 2014-8-27 14:04

4.主頁中的 "4:所有人員效益""3:個人查詢" 長條圖. 這是主管要看的部分. 該如何讓長條圖可以運作.並能選擇月份...(極大的問題 ><)
lager.master 發表於 2014/8/26 23:38

你的附檔,總表(資料庫)須有這些欄位 [廠商,姓名,工作日期,執行時間,工作代碼,數量,工作內容]
主頁,範本(勿更改) 才可有篩出指定的資料製圖
數量(工作表)是何作用?
作者: lager.master    時間: 2014-8-27 16:50

回復 2# GBKEE

了解. 數量單純做下拉清單使用而已. 未來會拿掉...使用者自己key會比較快
作者: lager.master    時間: 2014-8-27 20:37

本帖最後由 lager.master 於 2014-8-27 20:42 編輯

[attach]19031[/attach]
版主您好. 總表的安排方式一直沒有頭緒.是否能請您教我該如何做比較合適
我的疑問是
1:由於外包有兩間公司. 放在同一個地方是否OK .還是得分頁
2:每天工作項目很多.但總表只需要抓每天每個人的效益比.該怎麼抓呢. 外包商總共有10人(10張工作表).是否有辦法自己抓資料到總表

由於被老闆逼著做....他已經不想再看紙本手寫的資料了 (完全沒建電子檔).
自己又是新手. 衷心希望能給我點方向! 感恩
作者: GBKEE    時間: 2014-8-28 05:20

回復 4# lager.master


   
你的附檔,總表(資料庫)須有這些欄位 [廠商,姓名,工作日期,執行時間,工作代碼,數量,工作內容]
資料庫是記載所有的詳細資料(廠商,人員...).
可以依需求條件查看,個別廠商,個別人員,篩選後顯示在其他工作頁上.做你要的圖表
作者: luhpro    時間: 2014-8-31 09:54

回復 4# lager.master
依你檔案中總表的欄位做的:
  1. Sub bb()
  2.   Dim iCol%
  3.   Dim lRow&, lSRow&, lTRow&(0 To 1)
  4.   Dim bComp As Boolean
  5.   Dim rTar As Range
  6.   Dim wsTar As Worksheet, wsSou As Worksheet
  7.   
  8.   Set wsTar = Sheets("總表")
  9.   With Sheets("成員")
  10.     lRow = 2
  11.     lTRow(0) = 4
  12.     lTRow(1) = 4
  13.     Do While .Cells(lRow, 1) <> ""
  14.       lSRow = 6
  15.       Set wsSou = Sheets(CStr(.Cells(lRow, 1)))
  16.       bComp = .Cells(lRow, 2) = "TT科技"
  17.       iCol = bComp * -8
  18.       With wsTar
  19.          Do While wsSou.Cells(lSRow, iCol + 2) <> ""
  20.            With .Cells(lTRow(bComp + 1), iCol + 2)
  21.              .Value = wsSou.[E2] ' 廠商
  22.              .HorizontalAlignment = xlCenter
  23.            End With
  24.              With .Cells(lTRow(bComp + 1), iCol + 3)
  25.              .Value = wsSou.[C2] ' 姓名
  26.              .HorizontalAlignment = xlCenter
  27.            End With
  28.            With .Cells(lTRow(bComp + 1), iCol + 4)
  29.              .Value = wsSou.Cells(lSRow, 2) ' 工作日期
  30.              .NumberFormat = "m""月""d""日"";@"
  31.            End With
  32.            .Cells(lTRow(bComp + 1), iCol + 5) = CDate(wsSou.Cells(lSRow, 3)) & " ~ " & CDate(wsSou.Cells(lSRow, 4)) ' 執行時間
  33.            .Cells(lTRow(bComp + 1), iCol + 6) = wsSou.Cells(lSRow, 5) ' 工作代碼
  34.            .Cells(lTRow(bComp + 1), iCol + 7) = wsSou.Cells(lSRow, 6) ' 數量
  35.            .Cells(lTRow(bComp + 1), iCol + 8) = wsSou.Cells(lSRow, 7) ' 工作內容
  36.            lSRow = lSRow + 1
  37.            lTRow(bComp + 1) = lTRow(bComp + 1) + 1
  38.          Loop
  39.       End With
  40.       lRow = lRow + 1
  41.     Loop
  42.   End With
  43. End Sub
複製代碼
基本上我設計程式的做法如下供你參考:
1. 先確定標的工作表 : 長官要看的是哪些資料, 需要做出怎樣的表格或圖形, 以決定 總表 需要有的資料與圖形可先試做個母版出來.
2. 確定資料來源與方式 : 資料是從 電腦報表 還是 人工輸入 來的? 要怎麼抓資料? 是否需要中繼表格來存放資料?(也就是先抓資料到中繼表格暫存,最後再抓到或經過計算到總表中)
3. 從資料來源製作中繼工作表(可做 筆數較少但須具代表性 的測試資料, 或是實際取得的來源資料).
4. 實作程式確定依據資料來源與方式是否能實作出來標的工作表? 若有疑慮是否需要調整  來源資料取得方式, 或是 標的工作表格式.
5. 檢視試作出來的標的表格資料是否正確, 呈閱長官範例標的表格是否符合長官預期?(呈閱前務必確認資料正確, 且應有較大幅度變動, 或是長官指示的階段異動項目都實現後再呈閱)
6. 持續步驟3 與 5 直至程式完成.

有幾個重點需要留意的:
1. 做出來的表格是長官要看的, 長官也有可能在檢視時又要求修改標的表格呈現方式, 所以這個互動很重要.
2. 來源資料不正確就做不出來正確的標的表格, 人工輸入有可能會出現格式錯誤或是輸錯內容的情形, 是否需要驗證?如何驗證?
公司的電腦報表也可能會更新, 資料抓取判斷的方式可能需要有彈性.
3. 儘量將重複的工作或程式碼做成 SUB 副程式(需變動的資料參數)  的方式來呼叫,
較易維護與找問題點.

你所問的問題:
1:由於外包有兩間公司. 放在同一個地方是否OK .還是得分頁
分不分頁有好有壞, 不分頁容易抓資料(因為都在同個工作表上), 分頁則較易管理與不容易爆表,
另外若人工輸入, 則分頁(甚至分檔)可以各人輸各人的資料, 避免看到其他人的資料.
還有也要看你有沒有其他的的需求, 是不是有其他的表格需要用到這些資料? 若有, 資料應怎樣呈現較易共用.
還要考慮資料是會異動且持續增加的, 要如何實作出增加, 刪除, 修改 內容, 是架構構建時就需要考慮的問題.

2:每天工作項目很多.但總表只需要抓每天每個人的效益比.該怎麼抓呢. 外包商總共有10人(10張工作表).是否有辦法自己抓資料到總表
你可以試著參照上述程式修改看看.
作者: lager.master    時間: 2014-8-31 11:17

目前已經做出個半成品.由於檔案在公司明天才拿的到檔案 >_<
//////////////////
1.目前進度使用樞紐分析的長條作輸出. 感覺符合長官的需求也容易使用
2.人員打算用分頁處理了. 並創一個"總頁" 用VBA將所有分頁的資料彙整過來.遇到問題如下
   a:每個人的公式設定2000列(一年份)... 複製過來空白處也跟著過來...就變成A 1~20有資料.21~2000空白. 接著2001為B的資料.
      由於我找不到其他辦法....所以使用進階篩選. 於是又在旁邊讓他篩選成一個完整沒空格的資料 = = 土炮方式
   b:將所有人資料彙整到總頁的VBA我用的是抓取"固定名稱"的方式. 遇到新增成員就得重新在程式裡新增他的抓取.... 自動抓所有分頁的還沒搞出來..
3.利用土炮的方式.+ 樞紐分析... 目前已經可以堪用(上頭覺得這樣可以了).  但總卡死在一個地方. 就是樞紐分析怎樣抓資料就是會少一個人....
   無論我怎樣新增...他就是會固定少一人.... 是否能幫我看一下問題出在哪呢?~   (如附檔...)
ps:實際檔案是抓取總表的進階篩選果後無空白段差所有外包資料..一樣少一人. 檔案在公司就是

最後...外包由於是回自己公司輸入...再將檔案寄到我們公司.
有看過使用VBA自己將檔案內容匯入的方式. 還沒嘗試
下下策可能會自己手動copy= =    一星期一次/10人

感謝您的幫忙! 在這美麗的周末 ^_^[attach]19053[/attach]
作者: luhpro    時間: 2014-8-31 23:17

目前已經做出個半成品.由於檔案在公司明天才拿的到檔案 >_<
...
自動抓所有分頁的還沒搞出來
...
lager.master 發表於 2014-8-31 11:17
  1.   Dim vA
  2.   For Each vA In Worksheets
  3.     If vA.Name Like "*分析*" Then
  4.       With Va ' 遍歷每個名稱比對符合 *分析* (即所有名稱中包含 分析 兩個字)所找到的工作表
  5.         針對找到的工作表需要處理的內容
  6.       End With
  7.     End If
  8.   Next
複製代碼
樞紐分析表也是我的弱項,
且我也沒有裝 2010 版以上的 Excel,
暫時幫不了你.
作者: stillfish00    時間: 2014-9-1 15:32

回復 7# lager.master
少一人?你指少了sky嗎?
因為你交叉分析篩選器選了12347這個代碼...
按右上圖案取消篩選就好了
[attach]19061[/attach]




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)