標題:
[發問]
兩個Excel 表 跑巨集到報表上
[打印本頁]
作者:
v03586
時間:
2015-9-23 22:16
標題:
兩個Excel 表 跑巨集到報表上
我有設計兩個Excel 用來收集作業人員收料與作業進度計錄用的表單
我想要結合兩個Excel 加入判斷式 帶入報表中當中有要加入判斷式,不知道如何撰寫
[attach]22068[/attach]
基板接收(Substrate Receiving)上面的Database資料表,要比對報表上的MONBR欄位
如果資料表[Substrate Receiving]上的MO欄位 等於 報表上的 MONBR 欄位
則在收料欄上 打勾,沒有就保持空白 ,如例圖
[attach]22070[/attach]
電漿清洗(Plasma System) 上面的Database資料表,B欄與E欄要比對報表上的MONBR欄位
如果資料表[Plasma System]上的B欄位 等於 報表上的 MONBR 欄位
則在狀態欄上顯示P (表示Substrate站作業完畢要送入Plasma站)
[attach]22071[/attach]
如果資料表上E欄位等於 報表上MONBR欄位
則在狀態顯示 V (打勾表示完成 Substrate站與Plasma站)
我在想辦斷式應該要 如果B欄位不等於E 欄位 則顯示P
如果B欄位 等於 E 欄位 則顯示 V 應該是這樣程式判斷式才不會打結吧?
請問以上如何寫在Excel 巨集內,如果可以可否另開一個Excel 執行巨集 將這Substrate Receiving、Plasma System 資料表 跑巨集在 報表範例上?
[attach]22072[/attach]
作者:
v03586
時間:
2015-9-23 22:22
報表範例是經事先跑過前輩的巨集產生出來的報表(資料上千筆),這邊舉例幾筆....
所以巨集應該不能寫在報表範例上,前輩們的報表是將公司制定的報表 另外寫一個EXCEL跑巨集成這份
但因為裡面程式碼太複雜不想跟前輩的混在一起,則希望另外寫一個
作者:
准提部林
時間:
2015-9-24 11:39
本帖最後由 准提部林 於 2015-9-24 11:45 編輯
在〔輸入表〕輸入完成後,再派出結果至〔報表〕,
做了幾個防呆,參考看看:
Sub 派出結果()
Dim Arr, A, T$, xD, DT As Range
Set DT = [H22]
Set xD = CreateObject("Scripting.Dictionary")
Arr = Range([Database!B2], [Database!B65536].End(xlUp)(2))
For Each A In Arr
T = Right(A, 7): If T Like "#######" Then xD(T) = 1
Next
If xD.Count = 0 Then MsgBox "Database無資料可作業!": Exit Sub
Dim FL$, xB As Workbook, xS As Worksheet, R&
FL = ThisWorkbook.Path & "\範例報表.xls"
If Dir(FL) = "" Then MsgBox "找不到報表檔!": Exit Sub
If CheckBookOpen(FL) > 0 Then
MsgBox "報表檔正被開啟中,為避免錯誤,請先關閉!": Exit Sub
End If
Set xB = Workbooks.Open(FL)
With xB.Sheets(1)
R = .[B65536].End(xlUp).Row
If R < 7 Then MsgBox "報表無 MONBR 資料!": Exit Sub
Arr = .Range("B7:B" & R)
For i = 1 To UBound(Arr)
T = Right(Arr(i, 1), 7): Arr(i, 1) = ""
If xD(T) = 1 Then Arr(i, 1) = "V"
Next i
With .Range("N7:N" & R): .Value = Arr: .Select: End With
End With
DT(2) = DT: DT = Now
MsgBox "派出結果至報表已完成,確定無誤後儲存再關閉檔案!":
End Sub
'===============================
Private Function CheckBookOpen(BookName$) As Long '副程式-檢查檔案是否開啟中
On Error Resume Next
Open BookName For Binary Access Write Lock Write As #1
Close #1
CheckBookOpen = Err.Number
On Error GoTo 0
End Function
複製代碼
附件下載:
[attach]22082[/attach]
作者:
v03586
時間:
2015-9-24 20:26
回復
3#
准提部林
Dear 板大
礙於權限關係 檔案暫不能下載
但板大貼出來的程式碼中是可以執行的!!!感謝板大的support
想問檔案中 第二個功能分析 是否可行 (因為目前無法下載 看不到 Sorry)
作者:
准提部林
時間:
2015-9-24 21:45
回復
4#
v03586
用這下載吧:
http://www.funp.net/573395
多加點油,無法下載附件很不方便,不好意思老用其它的下載空間,得顧慮論壇的運作!
作者:
v03586
時間:
2015-9-24 22:19
回復
5#
准提部林
感謝版大,已下載OK...真不好意思 麻煩你了!!!
我會多加努力的:)
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)