Board logo

標題: [發問] VBA 填寫表格及另存新檔 [打印本頁]

作者: lovenice831    時間: 2020-12-29 16:36     標題: VBA 填寫表格及另存新檔

附件是我在公司另一份常常要剪剪貼貼的報表,每次在data 頁填好了後,就要把資料copy 回report 頁的表格裡並另存新檔以便上傳,我找了很多例子,多數都用於一些相對值的表格,不知這種不規則的表格該怎麼寫,希望各位能幫幫忙,謝謝 [attach]32903[/attach]
作者: n7822123    時間: 2020-12-30 09:52

本帖最後由 n7822123 於 2020-12-30 09:58 編輯

回復 1# lovenice831

我也不知道你的表格要怎麼填寫......

發問要附上你想要的 "執行結果"

我先依我觀察的結果寫,你再看看

產生的報告會在檔案的同路徑下

如附件


[attach]32915[/attach]
作者: lovenice831    時間: 2020-12-30 10:00

本帖最後由 lovenice831 於 2020-12-30 10:01 編輯

回復 2# n7822123

先謝謝幫忙,但我下載不到附件

我先錄制給你們看看
作者: lovenice831    時間: 2020-12-30 12:04

附件是我在公司另一份常常要剪剪貼貼的報表,每次在data 頁填好了後,就要把資料copy 回report 頁的表格裡並 ...
lovenice831 發表於 2020-12-29 16:36



    嘗試錄製了一次,希望能幫忙改進,謝謝 [attach]32916[/attach]
作者: n7822123    時間: 2020-12-31 02:18

本帖最後由 n7822123 於 2020-12-31 02:32 編輯

回復 4# lovenice831

感覺跟我想的差不多吧!?~~ 你無法收附件?

我貼程式給你,你執行"收貨報表"即可~後面都是副程式

錄製的巨集 500多列,應該沒人看得下去.....=.=,你先試看看,有漏填再說

另外,如果你沒辦法下載我的附件,請把你的報告範本"稍微"修改一下

把列19、20、21 都改成資料列,列20別用粗體框線,

當資料多餘3列,我的程式會自動複製列20



Dim Arr
Sub 收貨報表()
Dim Brr(), R&, K%, LotNo$
Application.ScreenUpdating = False
Arr = ['Receiving DATA'!A4].CurrentRegion
For R = 2 To UBound(Arr)
    If Arr(R, 5) <> LotNo Then 新表 R: LotNo = Arr(R, 5): K = 0
    K = K + 1: ReDim Preserve Brr(1 To 11, 1 To K)
    Brr(1, K) = Arr(R, 9)     '貨物名稱
    Brr(3, K) = LotNo        '批號
    Brr(4, K) = Arr(R, 7)     '板號
    Brr(5, K) = Arr(R, 8)     '箱號
    Brr(8, K) = Arr(R, 10)   '實物收貨
    If R + 1 > UBound(Arr) Then 另存新檔 Brr: Exit For
    If Arr(R + 1, 5) <> LotNo Then 另存新檔 Brr
Next R: Erase Arr: Erase Brr
Sheets("Receiving DATA").Activate
End Sub

Sub 新表(ByVal R)
Sheets("Receiving Report").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "Lot No. " & Arr(R, 5)
[C10] = Int(Arr(R, 2))        '收貨日期
[F10] = Arr(R, 2) - [C10]   '收貨時間
[C11] = Arr(R, 3)                '櫃號/貨車車牌
[J8] = Arr(R, 5)                    'Lot Number
[J10] = Arr(R, 11)                'PO No.
[J11] = Arr(R, 14)                'BD 負責人
End Sub

Sub 另存新檔(ByVal Brr)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
MyPath = ThisWorkbook.Path & "\"
Brr = Application.Transpose(Brr)
Rn = UBound(Brr): [G13] = Rn
If Rn >= 4 Then
  Rows("21:" & 21 + Rn - 4).Insert Shift:=4
  Rows(20).Copy
  Rows("21:" & 21 + Rn - 4).Select
  ActiveSheet.Paste
End If: [A10].Select
Application.CutCopyMode = False
[A19].Resize(Rn, 11) = Brr
[H13] = WorksheetFunction.Sum([E19].Resize(Rn))
ActiveSheet.Copy
With ActiveSheet
  .Parent.SaveAs MyPath & .Name & ".xls", xlNormal
  .Parent.Close 1
End With
ActiveSheet.Delete
End Sub


[attach]32921[/attach]
作者: lovenice831    時間: 2020-12-31 14:08

回復 5# n7822123


十分謝謝幫忙,我試試看
作者: lovenice831    時間: 2020-12-31 17:53

回復 5# n7822123


我試過了,謝謝你,
但我不是想要批次,因為data 內的資料是會增加,所以每次只會做另存更新的貨號報告上傳
作者: n7822123    時間: 2020-12-31 18:03

本帖最後由 n7822123 於 2020-12-31 18:09 編輯

回復 7# lovenice831

但是你的資料內有不同的批號,只需要第一個批號出表格的意思?

還是各個批號加起來,出一個報表,但是右上角只填第一個批號?

還是只要抓Data表內的最後一個批次的資料出表格?

如果你Data內的資料量很多,每個批次都要出表格,VBA執行的確會花上不少時間


作者: lovenice831    時間: 2020-12-31 21:41

回復 8# n7822123


    DATA 的資料會增加而每增加一個我便需要在REPORT 表中填寫對的資料,再把REPORT 另存新檔上傳回公司系統,而REPORT 是用Reference No:來紀錄及命名,會否有語法可以在REPORT 頁中簡選 Reference No:,便能從DATE 中自動找出對應資顯示在REPORT 中? 我在網上找的多是用於同一分頁及表格都是單一對應的例子,這份表格的確是麻煩了些,先謝謝你的幫忙,謝謝
作者: 准提部林    時間: 2021-1-1 12:46

Reference No: 如何填???

收貨報告表中有些checkbox,
在匯入資料後, 是否應先處理及勾選這些物件後再匯出另存???
作者: n7822123    時間: 2021-1-1 13:43

本帖最後由 n7822123 於 2021-1-1 13:54 編輯

回復 9# lovenice831

DATA 的資料會增加而每增加一個我便需要在REPORT 表中填寫對的資料,
再把REPORT 另存新檔上傳回公司系統,而REPORT 是用Reference No:來紀錄及命名,
會否有語法可以在REPORT 頁中簡選 Reference No:,便能從DATE 中自動找出對應資顯示在REPORT 中?
我在網上找的多是用於同一分頁及表格都是單一對應的例子,這份表格的確是麻煩了些,先謝謝你的幫忙,謝謝

我做了個 彈出表單 用 ListBox 讓你選,但是做了表單,只貼程式就沒意義了!

你需要下載我的附件才能看到那個表單,如果你還是不能下載附件,我只能用 Inputbox 列出來讓你選了.......

準大的疑惑,我也是有的,那些CheckBox 我都沒去改喔,都是原本的值

有需要,再提供判斷規則讓VBA去填,檔案如下


[attach]32927[/attach]
作者: n7822123    時間: 2021-1-1 14:05

回復 11# n7822123

上樓的檔案,右上"X"的關閉表單邏輯有些問題

請用下面此檔


[attach]32928[/attach]
作者: lovenice831    時間: 2021-1-2 14:04

回復 10# 准提部林


   不用,那些都不用選的,所以不用動那幾個儲存格
作者: lovenice831    時間: 2021-1-2 14:12

回復 12# n7822123


    謝謝
作者: lovenice831    時間: 2021-1-4 09:22

我試著用 REPORT 中的 J6 格改成下拉清單,範圍是報表的上半部份,看網上短片範例當改變清單後資料會自動跳出相應資料,但語法不知出了什麼問題,不會自己跳轉,有朋友能幫忙看看嗎?

[attach]32933[/attach]
作者: n7822123    時間: 2021-1-5 00:46

回復 15# lovenice831

程式比對分大小寫

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$J$6" Then
        Call Update
    End If
End Sub

作者: n7822123    時間: 2021-1-5 01:47

本帖最後由 n7822123 於 2021-1-5 01:56 編輯

回復 15# lovenice831


原來你的 "Reference No:"  是指 Data頁的 "Receiving Report No."

我大概知道你要幹嘛了,用我之前的檔案改給你

點選 報告頁的 [J6] 自動依 Data頁 的 Receiving Report No 產生下拉式選單

選擇好 "Reference No" 後,自動產生報告(另做新工作表,不改範本格式,避免重複執行會有問題)

同路徑下也會產生該報告的檔案 ,先貼程式如下



觸發事件-自動觸發程式,請複製貼上到 "Receiving Report" 工作表裡面

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row = 6 And Target.Column = 10 Then
  Application.EnableEvents = False
  Call 設下拉選單
  Application.EnableEvents = True
End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row = 6 And Target.Column = 10 Then
  Application.EnableEvents = False
  Call 收貨報表_單選
  Application.EnableEvents = True
End If
End Sub



一般模組程式,請隨便創一個模組貼上程式即可

Dim Arr, RepNo$

Sub 設下拉選單()
Application.ScreenUpdating = False
On Error GoTo 恢復
Set D = CreateObject("Scripting.Dictionary")
Arr = ['Receiving DATA'!A4].CurrentRegion
For R = 2 To UBound(Arr)
  RepNo = Arr(R, 13)
  If D(RepNo) = 0 Then D(RepNo) = R
Next R
For Each Key In D.keys: 批號串 = 批號串 & "," & Key: Next Key
With ['Receiving Report'!J6].Validation
  .Delete
  .Add Type:=xlValidateList, Operator:=xlBetween, Formula1:=批號串
End With
Exit Sub
恢復: 開啟觸發事件
End Sub

Sub 收貨報表_單選()
Dim Brr(), R0%, R&, K%, D As Object
Application.ScreenUpdating = False
On Error GoTo 恢復
Arr = ['Receiving DATA'!A4].CurrentRegion
Set D = CreateObject("Scripting.Dictionary")
Arr = ['Receiving DATA'!A4].CurrentRegion
For R = 2 To UBound(Arr)
  RepNo = Arr(R, 13)
  If D(RepNo) = 0 Then D(RepNo) = R
Next R
RepNo = ['Receiving Report'!J6]
If RepNo = "" Then Exit Sub
R0 = D(RepNo): 新表 R0
For R = R0 To UBound(Arr)
    K = K + 1: ReDim Preserve Brr(1 To 11, 1 To K)
    Brr(1, K) = Arr(R, 9)     '貨物名稱
    Brr(3, K) = Arr(R, 5)     '批號
    Brr(4, K) = Arr(R, 7)     '板號
    Brr(5, K) = Arr(R, 8)     '箱號
    Brr(8, K) = Arr(R, 10)   '實物收貨
    If R + 1 > UBound(Arr) Then 另存新檔 Brr: Exit For
    If Arr(R + 1, 5) <> LotNo Then 另存新檔 Brr: Exit For
Next R: Erase Arr: Erase Brr
A = 10 / 0
Exit Sub
恢復: 開啟觸發事件
End Sub

Sub 收貨報表_批次()
Dim Brr(), R&, K%
Application.ScreenUpdating = False
Arr = ['Receiving DATA'!A4].CurrentRegion
For R = 2 To UBound(Arr)
    If Arr(R, 5) <> LotNo Then 新表 R: LotNo = Arr(R, 5): K = 0
    K = K + 1: ReDim Preserve Brr(1 To 11, 1 To K)
    Brr(1, K) = Arr(R, 9)     '貨物名稱
    Brr(3, K) = LotNo        '批號
    Brr(4, K) = Arr(R, 7)     '板號
    Brr(5, K) = Arr(R, 8)     '箱號
    Brr(8, K) = Arr(R, 10)   '實物收貨
    If R + 1 > UBound(Arr) Then 另存新檔 Brr: Exit For
    If Arr(R + 1, 5) <> LotNo Then 另存新檔 Brr
Next R: Erase Arr: Erase Brr
Sheets("Receiving DATA").Activate
End Sub

Sub 新表(ByVal R)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Sheets("Receiving Report").Copy After:=Sheets(Sheets.Count)
On Error Resume Next
Sheets("Reference No " & Arr(R, 13)).Delete
On Error GoTo 0
ActiveSheet.Name = "Reference No " & Arr(R, 13)
[C10] = Int(Arr(R, 2))        '收貨日期
[F10] = Arr(R, 2) - [C10]   '收貨時間
[C11] = Arr(R, 3)                '櫃號/貨車車牌
[J6] = Arr(R, 13)                  'Reference No:
[J8] = Arr(R, 5)                    'Lot Number
[J10] = Arr(R, 11)                'PO No.
[J11] = Arr(R, 14)                'BD 負責人
[G11] = Arr(R, 4)                 '封條號
刪除新表觸發事件 ActiveSheet.CodeName
End Sub

Sub 另存新檔(ByVal Brr)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
MyPath = ThisWorkbook.Path & "\"
Brr = Application.Transpose(Brr)
Rn = UBound(Brr): [G13] = Rn
If Rn >= 4 Then
  Rows("21:" & 21 + Rn - 4).Insert Shift:=4
  Rows(20).Copy
  Rows("21:" & 21 + Rn - 4).Select
  ActiveSheet.Paste
End If: [A10].Select
Application.CutCopyMode = False
[A19].Resize(Rn, 11) = Brr
[H13] = WorksheetFunction.Sum([E19].Resize(Rn))
ActiveSheet.Copy
With ActiveSheet
  .Parent.SaveAs MyPath & .Name & ".xls", xlNormal
  .Parent.Close 1
End With
'ActiveSheet.Delete
End Sub

Sub 刪除新表觸發事件(ByVal 新表CodeNm)
Application.DisplayAlerts = False
With ThisWorkbook.VBProject
  For Each vbx In .VBComponents
    If vbx.Name = 新表CodeNm Then
      With vbx.CodeModule: .DeleteLines 1, .CountOfLines: End With
    End If
  Next
End With
End Sub

Sub 開啟觸發事件()
Application.EnableEvents = True
End Sub



檔案如下

[attach]32935[/attach]
作者: n7822123    時間: 2021-1-5 02:54

本帖最後由 n7822123 於 2021-1-5 03:06 編輯

回復 17# n7822123

發現我的程式Bug,當該報告編號的資料剛好只有一筆時,會有問題(陣列轉置會變成1維陣列)

修改如下程式,這次應該可以滿足你的需求~ 功能如下


點選 報告頁的 J6 儲存格 ,會自動依 Data頁 的 "Receiving Report No" 產生下拉式選單

選擇好 "Reference No" (J6)後,會自動產生報告(另做新工作表,不改範本格式,避免重複執行會有問題)



觸發事件-自動觸發程式,請複製貼上到 "Receiving Report" 工作表裡面

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row = 6 And Target.Column = 10 Then
  Application.EnableEvents = False
  Call 設下拉選單
  Application.EnableEvents = True
End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row = 6 And Target.Column = 10 Then
  Application.EnableEvents = False
  Call 收貨報表_單選
  Application.EnableEvents = True
End If
End Sub


一般模組程式,請隨便創一個模組貼上程式即可

Dim Arr, RepNo$
Sub 設下拉選單()
Application.ScreenUpdating = False
On Error GoTo 恢復
Set D = CreateObject("Scripting.Dictionary")
Arr = ['Receiving DATA'!A4].CurrentRegion
For R = 2 To UBound(Arr)
  RepNo = Arr(R, 13)
  If D(RepNo) = 0 Then D(RepNo) = R
Next R
For Each Key In D.keys: 批號串 = 批號串 & "," & Key: Next Key
With ['Receiving Report'!J6].Validation
  .Delete
  .Add Type:=xlValidateList, Operator:=xlBetween, Formula1:=批號串
End With
Exit Sub
恢復: 開啟觸發事件
End Sub

Sub 收貨報表_單選()
Dim Brr(), R0%, R&, K%, D As Object
Application.ScreenUpdating = False
On Error GoTo 恢復
RepNo = ['Receiving Report'!J6]
If RepNo = "" Then Exit Sub
Set D = CreateObject("Scripting.Dictionary")
Arr = ['Receiving DATA'!A4].CurrentRegion
For R = 2 To UBound(Arr)
  If D(Arr(R, 13) & "") = 0 Then D(Arr(R, 13) & "") = R
Next R
R0 = D(RepNo): 新表 R0
For R = R0 To UBound(Arr)
    K = K + 1: ReDim Preserve Brr(1 To 11, 1 To K)
    Brr(1, K) = Arr(R, 9)     '貨物名稱
    Brr(3, K) = Arr(R, 5)     '批號
    Brr(4, K) = Arr(R, 7)     '板號
    Brr(5, K) = Arr(R, 8)     '箱號
    Brr(8, K) = Arr(R, 10)   '實物收貨
    If R + 1 > UBound(Arr) Then 另存新檔 Brr: Exit For
    If Arr(R + 1, 13) <> RepNo Then 另存新檔 Brr: Exit For
Next R: Erase Arr: Erase Brr
Exit Sub
恢復: 開啟觸發事件
End Sub

Sub 收貨報表_批次()
Dim Brr(), R&, K%
Application.ScreenUpdating = False
Arr = ['Receiving DATA'!A4].CurrentRegion
For R = 2 To UBound(Arr)
    If Arr(R, 13) <> RepNo Then 新表 R: RepNo = Arr(R, 13): K = 0
    K = K + 1: ReDim Preserve Brr(1 To 11, 1 To K)
    Brr(1, K) = Arr(R, 9)     '貨物名稱
    Brr(3, K) = LotNo        '批號
    Brr(4, K) = Arr(R, 7)     '板號
    Brr(5, K) = Arr(R, 8)     '箱號
    Brr(8, K) = Arr(R, 10)   '實物收貨
    If R + 1 > UBound(Arr) Then 另存新檔 Brr: Exit For
    If Arr(R + 1, 13) <> RepNo Then 另存新檔 Brr
Next R: Erase Arr: Erase Brr
Sheets("Receiving DATA").Activate
End Sub

Sub 新表(ByVal R)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Sheets("Receiving Report").Copy After:=Sheets(Sheets.Count)
On Error Resume Next
Sheets("Reference No " & Arr(R, 13)).Delete
On Error GoTo 0
ActiveSheet.Name = "Reference No " & Arr(R, 13)
[C10] = Int(Arr(R, 2))        '收貨日期
[F10] = Arr(R, 2) - [C10]   '收貨時間
[C11] = Arr(R, 3)                '櫃號/貨車車牌
[J6] = Arr(R, 13)                  'Reference No:
[J8] = Arr(R, 5)                    'Lot Number
[J10] = Arr(R, 11)                'PO No.
[J11] = Arr(R, 14)                'BD 負責人
[G11] = Arr(R, 4)                 '封條號
刪除新表觸發事件 ActiveSheet.CodeName
[J6].Validation.Delete
End Sub

Sub 另存新檔(ByVal Brr)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
MyPath = ThisWorkbook.Path & "\"
Brr = Application.Transpose(Brr)  '當Brr資料只有一筆,轉置後變1維陣列
Rn = UBound(Brr): [G13] = Rn
On Error Resume Next
XX% = UBound(Brr, 2)   '當Brr=1維陣列,會跳錯誤
If Err <> 0 Then Rn = 1  '錯誤時,設Rn=1
On Error GoTo 0
If Rn >= 4 Then
  Rows("21:" & 21 + Rn - 4).Insert Shift:=4
  Rows(20).Copy
  Rows("21:" & 21 + Rn - 4).Select
  ActiveSheet.Paste
End If: [A10].Select
Application.CutCopyMode = False
[A19].Resize(Rn, 11) = Brr
[H13] = WorksheetFunction.Sum([E19].Resize(Rn))
ActiveSheet.Copy
With ActiveSheet
  .Parent.SaveAs MyPath & .Name & ".xls", xlNormal
  .Parent.Close 1
End With
'ActiveSheet.Delete
End Sub

Sub 刪除新表觸發事件(ByVal 新表CodeNm)
Application.DisplayAlerts = False
With ThisWorkbook.VBProject
  For Each vbx In .VBComponents
    If vbx.Name = 新表CodeNm Then
      With vbx.CodeModule: .DeleteLines 1, .CountOfLines: End With
    End If
  Next
End With
End Sub

Sub 開啟觸發事件()
Application.EnableEvents = True
End Sub


檔案如下

[attach]32937[/attach]
作者: n7822123    時間: 2021-1-5 03:18

回復 15# lovenice831


暈頭了,真的很粗心....,收貨板數沒改到,改一下程式位置

Rn = UBound(Brr)
On Error Resume Next
XX% = UBound(Brr, 2)   '當Brr=1維陣列,會跳錯誤
If Err <> 0 Then Rn = 1  '錯誤時,設Rn=1
On Error GoTo 0
[G13] = Rn


檔案如下

[attach]32938[/attach]
作者: lovenice831    時間: 2021-1-5 14:22

回復 19# n7822123


看到報表十分激動,真的很謝謝你 {:3_59:} {:3_59:}
作者: lovenice831    時間: 2021-1-7 16:57

回復 18# n7822123
Dim Arr, RepNo$

Sub 設下拉選單()
Application.ScreenUpdating = False
On Error GoTo 恢復
Set D = CreateObject("Scripting.Dictionary")
Arr = ['Receiving DATA'!A4].CurrentRegion
For R = 2 To UBound(Arr)
  RepNo = Arr(R, 13)
  If D(RepNo) = 0 Then D(RepNo) = R
Next R
For Each Key In D.keys: 批號串 = 批號串 & "," & Key: Next Key
With ['Receiving Report'!J6].Validation
  .Delete
  .Add Type:=xlValidateList, Operator:=xlBetween, Formula1:=批號串
End With
Exit Sub
恢復: 開啟觸發事件
End Sub
請問這個批號串是出自那裡,因為我試把那數字組轉成別的組合,發現英文+數字的組合可行,像apr 0001, 但如若只0001或是 aaa-01/12-0001 這種便不行,這個我嘗試入格式換掉[批號串]﹐也是不行,是否這種語法本來就不可以變改的呢?
作者: 准提部林    時間: 2021-1-7 20:27

回復 21# lovenice831


1) 先確定你的編碼來源是[文字]還是[數值]格式
2) 若是[文字]格式, 那麼下拉清單那一格也須設定為[文字]格式,
    否則下拉選取後, 0001 變成 1 , 或 801E10 或 2-12-3 也會變成不一樣(變成科學記號或日期).
    而且, 0001 應該是實際四個字元組成, 而不是輸入1, 但格式設成 "0000”.
3) 純數字的, 更要注意格式, 1234 及 "1234",  字典檔會看做不一樣, 用  IF 1234 = "1234 也是 "FALSE",
    當然, 編號也儘量不要含有空白字元, 手動輸入時容易誤打!!!
 
 
 
作者: n7822123    時間: 2021-1-8 12:08

本帖最後由 n7822123 於 2021-1-8 12:17 編輯

回復 21# lovenice831

我已經限定  RepNo 是 字串格式了~~

Dim Arr, RepNo$

Sub 設下拉選單()
Application.ScreenUpdating = False
On Error GoTo 恢復
Set D = CreateObject("Scripting.Dictionary")
Arr = ['Receiving DATA'!A4].CurrentRegion
For R = 2 To UBound(Arr)
  RepNo = Arr(R, 13)
  If D(RepNo) = 0 Then D(RepNo) = R
Next R]

作者: lovenice831    時間: 2021-1-8 12:34

謝謝兩位指教,我再試試
作者: lovenice831    時間: 2021-1-8 13:06

回復 23# n7822123


我試著把兩邊都文字﹐但都行不了,
如果照檈主所講,下拉清單不設限制,那能用 / 嗎?
有一份差不多的報表,但那Reference No: 的排序是用這個格式: AAA-01/21-001
中間插了[/] 便用不到了
作者: 准提部林    時間: 2021-1-8 21:31

回復 25# lovenice831


AAA-01/21-001  當下拉清單是沒問題,
但若要依此存成檔案名稱是行不通的, 含"/"違反命名規則,
若有其他問題, 應上傳檔案, 才能判斷是哪一環節???
作者: 准提部林    時間: 2021-1-9 11:41

另案參考:
[attach]32957[/attach]

另存檔部份沒做~~
作者: lovenice831    時間: 2021-2-3 14:11

回復 27# 准提部林


    不好意思,我一直以為自己回覆你了,原來我沒回,謝謝你的幫忙 ^^"
作者: mark15jill    時間: 2021-2-5 14:25

回復  lovenice831

感覺跟我想的差不多吧!?~~ 你無法收附件?

我貼程式給你,你執行"收貨報表"即可~後 ...
n7822123 發表於 2020-12-31 02:18



    印象中~ 相同功能我之前有發過一次 完整版的範例... 只是要翻舊文章 找看看

    該功能是 填寫特定資料後  手動點擊儲存 即可根據 名稱 另存
作者: lovenice831    時間: 2021-2-8 10:02

回復 29# mark15jill


  那我先找找看,謝謝你




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