Board logo

標題: [發問] 多筆資料列印問題 [打印本頁]

作者: hoyeh    時間: 2010-8-23 23:45     標題: 多筆資料列印問題

本帖最後由 hoyeh 於 2010-8-24 22:40 編輯

[attach]2542[/attach]

想請教各位:
附件裡,
明細帳表格是依據明細的資料做成,如果一個品名一張表
假設我有50個品名要列印50張表(表格下方為品名的明細資料)EXCEL可以列印的出來嗎?

O明細表格是依據產銷表格製作,產銷表每頁有40筆資料
假設我有500筆資料,EXCEL可以將500筆資料依產銷表格分成40筆列印嗎?

因為資料為excel,不曉得是否用excel還是程式或其他方式才能跑出結果,
以上問題,麻煩各位解答,謝謝。^^
作者: Hsieh    時間: 2010-8-24 00:40

回復 1# hoyeh


Q1. 明細帳表格是依據明細的資料做成,如果一個品名一張表
假設我有50個品名要列印50張表(表格下方為品名的明細資料)EXCEL可以列印的出來嗎?
A1.此種列印應該要用VBA輔助方可完全自動列印,若以公視必須每一次輸入品名,然後依照品名寫公式帶入表格

Q2.O明細表格是依據產銷表格製作,產銷表每頁有40筆資料
假設我有500筆資料,EXCEL可以將500筆資料依產銷表格分成40筆列印嗎?
A2.此列印較簡單,複製所有資料到O明細表格,然後設定標題列列印即可
作者: asimov    時間: 2010-8-24 01:08

回復 1# hoyeh


明細帳表格可以用樞紐分析表完成
只是表格需要作些美化
[attach]2560[/attach]
作者: hoyeh    時間: 2010-8-24 22:30

本帖最後由 hoyeh 於 2010-8-24 22:31 編輯

Q1. 明細帳表格是依據明細的資料做成,如果一個品名一張表
假設我有50個品名要列印50張表(表格下方為品名的明細資料)EXCEL可以列印的出來嗎?
A1.此種列印應該要用VBA輔助方可完全自動列印,若以公視必須每一次輸入品名,然後依照品名寫公式帶入表格

--->要使用到VBA輔助,這個有點超出自己的理解範圍了^^bb

Q2.O明細表格是依據產銷表格製作,產銷表每頁有40筆資料
假設我有500筆資料,EXCEL可以將500筆資料依產銷表格分成40筆列印嗎?
A2.此列印較簡單,複製所有資料到O明細表格,然後設定標題列列印即可

--->感謝解答,我怎麼沒想到還有這個方法^^,但如果下方若要有合計與蓋章欄位,這個方法就應該不行了是嗎?

對excel處於半生不熟的狀態,還是非常感謝您的解答,謝謝。
作者: hoyeh    時間: 2010-8-24 22:37

本帖最後由 hoyeh 於 2010-8-24 22:38 編輯
明細帳表格可以用樞紐分析表完成
只是表格需要作些美化
asimov 發表於 2010-8-24 01:08



原來還有樞紐分析可以研究,剛好對樞紐分析這塊比較弱Orz
要上網看一下功能教學^^bb,不過至少還有個方向還有可能完成
非常感謝您的解答,有個方向可以思考,謝謝。

作者: Hsieh    時間: 2010-8-25 00:46

回復 4# hoyeh
  1. Sub 明細()
  2. Dim Ar As Variant, Ay()
  3. Set dic = CreateObject("Scripting.Dictionary")
  4. With Sheet1
  5.    For Each a In .Range(.[D2], .[D65536].End(xlUp))
  6.       If IsEmpty(dic(a.Value)) Then
  7.          Ar = _
  8.          Array(Mid(a.Offset(, -1), 3, 2), Mid(a.Offset(, -1), 5, 2), "", "", "", "", "", a.Offset(, 1).Value, a.Offset(, 2).Value, a.Offset(, 3).Value)
  9.          ReDim Preserve Ay(0): Ay(0) = Ar
  10.          dic(a.Value) = Ay
  11.          Else
  12.          Ay = dic(a.Value)
  13.          s = UBound(Ay) + 1
  14.          ReDim Preserve Ay(s)
  15.          Ay(s) = _
  16.          Array(Mid(a.Offset(, -1), 3, 2), Mid(a.Offset(, -1), 5, 2), "", "", "", "", "", a.Offset(, 1).Value, a.Offset(, 2).Value, a.Offset(, 3).Value)
  17.          dic(a.Value) = Ay
  18.        End If
  19.     Next
  20. End With
  21. With Sheet2
  22. For Each ky In dic.keys
  23.    .[A7:J52] = ""
  24.    .[C3] = ky
  25.    s = UBound(dic(ky)) + 1
  26.    If s > 46 Then
  27.    i = 0
  28.       Do Until i = s
  29.          r = 0: [A7:J52] = ""
  30.          Do Until r = 46 Or i = s
  31.          .[A7].Offset(r, 0).Resize(, 10) = dic(ky)(i)
  32.          r = r + 1
  33.          i = i + 1
  34.          Loop
  35.          .PrintPreview
  36.       Loop
  37.      Else
  38.        .[A7].Resize(s, 10) = Application.Transpose(Application.Transpose(dic(ky)))
  39.        .PrintPreview
  40.     End If
  41. Next
  42. End With
  43. End Sub
  44. Sub 產銷()
  45. With Sheet3
  46. i = 3
  47. Do Until i = .[B65536].End(xlUp).Row
  48. r = 0: Sheet4.[A3:J41] = ""
  49. Do Until r = 39 Or i = .[B65536].End(xlUp).Row
  50.    Sheet4.[A3].Offset(r, 0).Resize(, 10) = _
  51.    Array(.Cells(i, "B"), .Cells(i, "C"), "PCS", "", "", "", .Cells(i, "G"), "KG", .Cells(i, "F") / .Cells(i, "G"), .Cells(i, "F"))
  52.    r = r + 1: i = i + 1
  53. Loop
  54. Sheet4.PrintPreview
  55. Loop
  56. Sheet4.PrintPreview
  57. End With
  58. End Sub
複製代碼

作者: hoyeh    時間: 2010-8-26 22:18

本帖最後由 hoyeh 於 2010-8-28 22:26 編輯

回復 6# Hsieh


   excel果然也是門很深奧的學問,
 感謝您撥空教學,我再套用看看,謝謝。^^


網路搜尋VBA輔助,看了仍不是很瞭解
但還是感謝您的解答。^^


作者: hoyeh    時間: 2010-8-28 22:19

明細帳表格可以用樞紐分析表完成
只是表格需要作些美化
asimov 發表於 2010-8-24 01:08



能請教,請問我試出的結果變成這樣,是哪個步驟做錯了嗎?

[attach]2622[/attach]

希望能不吝指教,謝謝。^^
作者: asimov    時間: 2010-8-29 22:58

回復 8# hoyeh


將 B3 的"資料"拖曳到 C3 的合計即可
作者: hoyeh    時間: 2010-8-30 23:13

回復  hoyeh


將 B3 的"資料"拖曳到 C3 的合計即可
asimov 發表於 2010-8-29 22:58



原來是要如此用法,難怪試了很多次都無法成功,感謝指導,謝謝。^^




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