返回列表 上一主題 發帖

[發問] 用VBA自己篩選 還是用一般方式處理?

[發問] 用VBA自己篩選 還是用一般方式處理?

想請問一下大家
有辦法將 附加檔案中 每日生產工時/產值 那邊的內容
另外做一個SHEETS 像 [每日報表] 那樣
如果在[每日報表]輸入日期 然後 操作員的  開始時間 結束時間 總工時 休息時間  工時差 產值
能自己跑出來加總嗎

我有試過用樞紐分析表 不過資料跟自己加總的不太對?
要用程式下去跑嗎
麻煩大家了

報表.rar (45.22 KB)

回復 13# joey0415

你好 我後來用你說的方式改寫
select
sum([開始時間]) as 開始時間  ,
sum([結束時間]) as 結束時間 ,
sum([總工時(分)]) as 總工時,
sum([休息時間])  as 休息時間
sum([應完成時間(分)]) as 應完成時間,
sum([工時差]) as 工時差,
sum([產值]) as 產值 ,
日期,操作員 from [沖壓日報表$]
group by 日期,操作員

可是休息時間會出錯  後來我先把休息時間刪掉


後來變成開始與結束時間 都跟原本的不同  到是其他值都對?

TOP

回復 11# guaga


將你的資料簡化一下,如下

設定一下你的日期格式即可

select sum([總工時(分)]) as 時數  , 日期,操作員  from [工作表1$] group by 日期,操作員
   

TOP

回復 11# guaga


    SELECT 操作員, sum(產值) as 總產值,sum(日期) as 總時數 FROM [沖壓日報表$] GROUP BY 操作員

as 把就把前面的東西重新命名

TOP

回復 10# joey0415

真的很謝謝你這麼有耐心幫我!!!

後來我有參考網站用group by
SELECT 操作員, sum(產值) FROM [沖壓日報表$] GROUP BY 操作員  這個沒有問題

但是要增加日期下去 值就跑掉了
SELECT 操作員, sum(產值),sum(日期) FROM [沖壓日報表$] GROUP BY 操作員

還有 欄位的預設值都是這樣(如圖)

TOP

回復 9# guaga


select sum([總工時(分)]),sum([休息時間(分)]),sum([應完成時間(分)]),sum(工時差) from [沖壓日報表$] where 操作員 in ('蒂妮','宇拉')

可以參考以下
http://www.1keydata.com/tw/sql/sqlin.html

而第九篇回文的方式,可以列出所有操作員的加總項

而你問的則是指定某些人員

而 in  中的人員,也可以是selcet查詢  ,例如你利找到某種排列的前三名語法後,把它放進in中,它也會自動找出你要的進階資料

例如子查詢
http://www.1keydata.com/tw/sql/sql-subquery.html
參考

TOP

回復 8# guaga

不好意思 在請問一下 如果要增加操作人員是 在where 操作員後面再增加名稱嗎
select sum([總工時(分)]),sum([休息時間(分)]),sum([應完成時間(分)]),sum(工時差) from [沖壓日報表$] where 操作員='蒂妮,宇拉'

TOP

回復 7# joey0415
自學可以這麼厲害  我要檢討檢討
是參考"excel與外部資料無縫整合"這本學的嗎

TOP

本帖最後由 joey0415 於 2013-11-12 11:43 編輯

回復 6# guaga

select   員工, sum(你要加總的欄位,例如工時) from 你的sheet   where 你要選取的範圍(如指定日期…)    group by 你要每分組的欄位(例如:員工, 日期)


    類似這樣的語法,你大概可以把所有的資料,按照,員工與日期,把所有工時加總


以上為個人自學用語不一定精準

group by就是把你要的資料分成一群一群的,之前在按照你要select條件判斷,例如你要sum加總,它就將你指定的群組加總…


參考參考

TOP

回復 5# joey0415

我用出來了謝謝你
想請問一下 你說的group by  
有辦法將所有操作員做一個加總嗎
還是要用VBA撰寫?

TOP

        靜思自在 : 待人退一步,愛人寬一寸,就會活得很快樂。
返回列表 上一主題