返回列表 上一主題 發帖

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

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

我自己新開一個新檔

資料=>現有連線=>更多=>excel檔=>日報表=>內容=>定義

儲存格修改一下格式設定

參考參考

sql語法

select 日期,操作員,開始時間,結束時間,[總工時(分)],[休息時間(分)],[應完成時間(分)],工時差 from [日報表$] where 操作員='蒂妮'

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









TOP

本帖最後由 joey0415 於 2013-11-11 19:08 編輯

回復 4# guaga

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

最後一張圖就是蒂妮的個人加總,如果要每人,每天的加總

你可能還要再參考一下sql中的group by語法,功能很強大哦!

我自已在資料庫中使用group by語法,約29萬筆資料,以excel叫出來,並使用雙重group by語法,好像不用十秒就運算完了

你那個還算簡單,建議如果資料量大一些,還是放在真正的資料庫中,安全運算又方便

當然以上語法,如果正確,你還可以用錄製的方式,產一vba碼,最後把人名等改成變數並製成下拉選單按鈕,最後你要查什麼,下拉選單找到人名,按下去就知道

花一點時間研究一下就可以省很多力氣

博碩文化的  excel與外部資料無縫整合,這本你可以參考一下!

參考

TOP

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

回復 6# guaga

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


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


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

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


參考參考

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

回復 11# guaga


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

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

TOP

回復 11# guaga


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

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

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

TOP

        靜思自在 : 【做人的開始】每一天都是故人的開始,每一個時刻都是自己的警惕。
返回列表 上一主題