出貨單合併列印輸出問題,有無直接操作方法,或需採用VBA解決。
- 帖子
- 132
- 主題
- 25
- 精華
- 0
- 積分
- 199
- 點名
- 0
- 作業系統
- window XP
- 軟體版本
- Excel 2010
- 閱讀權限
- 20
- 性別
- 男
- 來自
- 台灣 新竹
- 註冊時間
- 2010-6-1
- 最後登錄
- 2022-7-14
  
|
出貨單合併列印輸出問題,有無直接操作方法,或需採用VBA解決。
現有出貨單(一單號有多項產品要輸出),詳Sheet「輸出內容」
因為出貨當時,即需要即時印出來送給客戶。
Sheet 內容說明
「出貨單內容」:訂單要出貨的內容
「出貨單客戶」:訂單是那位客戶訂購的
「輸出內容」:要給Word、合併列印輸出用的
問題有3,如下,不求能夠完全解決
1.可否操作直接套印出貨單號、品名、數量、單價、金額,但同一張出貨單,只有一位訂購客戶,所以只要出現一次。
2.如果同時有3張出貨單要印,可否依出貨單號不同時,判斷需要換頁列印。
3.可否有當頁出貨單的合計數可以列印上去(這個如果不行,還可以自已加過手寫上去)
1.的部分比較需要做,因為手寫不快,容易錯。
2.至不濟,分批列印也還好
整個問題有點難度,如果不能全部解決,請問有無解題的方向指導,也很感謝。 |
-
-
出貨.zip
(10.86 KB)
|
|
|
|
|
|
- 帖子
- 9
- 主題
- 2
- 精華
- 0
- 積分
- 21
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- OFFICE 2010
- 閱讀權限
- 10
- 註冊時間
- 2016-3-19
- 最後登錄
- 2017-11-24

|
17#
發表於 2016-9-9 08:57
| 只看該作者
回復 7# Hsieh
超好用的....套一個空白表就可以印出所要的表單
比連結到WORD做合併列印還贊 |
|
|
|
|
|
|
- 帖子
- 2
- 主題
- 0
- 精華
- 0
- 積分
- 50
- 點名
- 0
- 作業系統
- win 7
- 軟體版本
- office 2010
- 閱讀權限
- 20
- 性別
- 女
- 來自
- TAIWAN
- 註冊時間
- 2015-9-14
- 最後登錄
- 2017-3-20
|
16#
發表於 2015-9-14 09:32
| 只看該作者
|
|
|
|
|
|
- 帖子
- 76
- 主題
- 33
- 精華
- 0
- 積分
- 116
- 點名
- 0
- 作業系統
- winxp
- 軟體版本
- office2003
- 閱讀權限
- 20
- 性別
- 男
- 來自
- 新竹
- 註冊時間
- 2011-9-29
- 最後登錄
- 2020-8-25
|
15#
發表於 2012-5-9 10:26
| 只看該作者
請問版主:
若列印一式三聯,如出貨單 表格略有不同,內容一樣列印三張 一張收執聯,一張留底聯,一張存查,該如何修改,謝謝! |
|
max
|
|
|
|
|
- 帖子
- 132
- 主題
- 25
- 精華
- 0
- 積分
- 199
- 點名
- 0
- 作業系統
- window XP
- 軟體版本
- Excel 2010
- 閱讀權限
- 20
- 性別
- 男
- 來自
- 台灣 新竹
- 註冊時間
- 2010-6-1
- 最後登錄
- 2022-7-14
  
|
14#
發表於 2011-5-6 10:04
| 只看該作者
GBKEE版主,謝謝。這樣我知道這個陣列的語法了。 |
|
|
|
|
|
|
- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
13#
發表於 2011-5-5 15:51
| 只看該作者
回復 12# Baracuda
是一維陣列, 非二維陣列.
- Sub Ex()
- Dim Ar(2), i%, y%, a
- Ar(0) = Array(1, 2, 3, 4)
- Ar(1) = Array("A", "B", "C", "D")
- Ar(2) = Array("甲", "乙", "丙", "丁")
- For i = 0 To UBound(Ar)
- For y = 0 To UBound(Ar(i))
- [a1].Offset(i, y) = Ar(i)(y)
- Next
- Next
- End Sub
複製代碼 |
|
|
|
|
|
|
- 帖子
- 132
- 主題
- 25
- 精華
- 0
- 積分
- 199
- 點名
- 0
- 作業系統
- window XP
- 軟體版本
- Excel 2010
- 閱讀權限
- 20
- 性別
- 男
- 來自
- 台灣 新竹
- 註冊時間
- 2010-6-1
- 最後登錄
- 2022-7-14
  
|
12#
發表於 2011-5-5 14:52
| 只看該作者
GBKEE版主
一般 Array2維陣列用法是Ar(i,2)但這裏用的是Ar(i)(2)。
這個語法我沒看過,所以想跟他確定一下。
網路上我有 Google 過,量太大,不容易找這個特定的語法。
Hsieh版主有點是「一招包一路」的方式。 |
|
|
|
|
|
|
- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
11#
發表於 2011-5-5 14:13
| 只看該作者
這個方式在這裏 Work,只是我沒看過有人這樣用
可搜尋 Array 看看 |
|
|
|
|
|
|
- 帖子
- 132
- 主題
- 25
- 精華
- 0
- 積分
- 199
- 點名
- 0
- 作業系統
- window XP
- 軟體版本
- Excel 2010
- 閱讀權限
- 20
- 性別
- 男
- 來自
- 台灣 新竹
- 註冊時間
- 2010-6-1
- 最後登錄
- 2022-7-14
  
|
10#
發表於 2011-5-5 13:41
| 只看該作者
Hsieh超級版主你真的很神,我把整個內容看完了。
你的VBA,還有考慮到超過5筆列印上限的問題。
其他一些諸如要累計、格式…都算小問題。
你的資料中,有個地方我要請教你
.Cells(r + 5, 2).Resize(, 5) =(Ar(i)(2), Ar(i)(3), Ar(i)(4), Ar(i)(5), Ar(i)(6))
這個好像是2維陣列的方式,你是不是用陣列Ar()包陣列的方式(另外的元素2~5,0為訂購客戶的名稱,1是出貨單號)。
這個方式在這裏 Work,只是我沒看過有人這樣用。 |
|
|
|
|
|
|
- 帖子
- 132
- 主題
- 25
- 精華
- 0
- 積分
- 199
- 點名
- 0
- 作業系統
- window XP
- 軟體版本
- Excel 2010
- 閱讀權限
- 20
- 性別
- 男
- 來自
- 台灣 新竹
- 註冊時間
- 2010-6-1
- 最後登錄
- 2022-7-14
  
|
9#
發表於 2011-5-4 10:23
| 只看該作者
Hsieh版主:
我有試過你的東西,資料可以做出來。雖然我還不是很完全明白內容。
我寫的VBA一定是沒有你的精簡。
謝謝你的回答,我省去不少時間發展我的 VBA。 |
|
|
|
|
|
|