查看完整版本: EXCEL VBA 依照報表跑巨集呈現我要的資訊
頁: [1]

v03586 發表於 2015-9-30 02:42 AM

EXCEL VBA 依照報表跑巨集呈現我要的資訊

本帖最後由 v03586 於 2015-12-12 12:40 AM 編輯

公司有一份制式的報表,上面林林總總....我的工作是負責催討delay批 與 虛帳問題
所以我想把制式的報表執行巨集後,呈現我要的資訊,我就不用一筆一筆去看

Excel comply資料表作為按鈕執行巨集用,執行結果呈現在Result資料表上
因為公司的報表上的List 將近3千多筆...... 提供的EXCEL 範例 刪除了大部分 保留的舉利用


所以這個程式需要結合兩個功能delay批 與 虛帳

先來呈現虛帳如何表示好了
M欄位+到BM欄位大於J欄位時則是虛帳
則呈現在Result資料表上 反綠做為區隔
則表達方式如圖



在來另一個功能delay批 呈現方式

AE欄位是執行時間,依照執行時間去筆對公司制式報表上的DATA TIME 只要超過3天
綠色欄位(X,Y,Z,AA,AB,AC,AG,AH,AN,AO,AT,AU,AV,AW)上還有數字,代表Delay批,
則呈現欄位依樣在Result資料表上,反黃做為區隔
如例圖


所以這個程式執行結果就是會呈現delay批 與 虛帳 在Result資料表上用兩個顏色做為區分

不知道這個程式方案是否可行?


補充...如果兩個條件都相同,就呈現Delay批












...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div><div></div>

rr09192084 發表於 2015-10-2 04:45 PM

1.你的檔案裏沒有任何巨集或是程式碼,你要不要先自行努力一下,先寫個大概框架出來。

2.這個程式一我個人的看法,要用相對位置來處理,比方說要先找到各個產品的位置,以PKG Type :
的右邊位移3就是 Product Name 了,在下下延伸一直到空白為止,就是資料的範圍,你能用程式把這一區範圍資料讀取出來,接下來的事就好辦多了。

3.我看你的完成日期在原始工作表中 有DF DG DH 是用哪一個為基準呢?...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div>

v03586 發表於 2015-10-7 10:55 PM

寫出來了~~~放上來分享!!若有人需要類似功能的可以當為Base~Sub 執行()
Dim Arr, Brr(0, 1 To 32), j&, Jm%, k&, Km%, TT$, QD, QA, QB
Call 清除
Dim X As New Application
With X.Workbooks.Open(ThisWorkbook.Path & "\ONHAND2HR_FMC_PP.xls", ReadOnly:=True)
     Arr = .Sheets(1).UsedRange.Columns("A:BM").Cells
     .Close 0
End With
For j = 9 To UBound(Arr)
    If Arr(j, 1) = "PKG Type :" Then TT = Arr(j, 4)
    If Arr(j, 1) Like "#######" = False Then GoTo 101
  
    QD = Date
    If IsDate(Arr(j, 9)) Then QD = DateValue(Arr(j, 9))
    If QD >...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div>
頁: [1]