Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6206 / 13644 ツリー ←次へ | 前へ→

【46600】オートフィルタで抽出したデータの印刷について VBA初心者 07/2/7(水) 19:33 質問[未読]
【46601】Re:オートフィルタで抽出したデータの印刷... Pipop 07/2/7(水) 19:50 発言[未読]
【46603】Re:オートフィルタで抽出したデータの印刷... VBA初心者 07/2/7(水) 20:19 質問[未読]
【46604】Re:オートフィルタで抽出したデータの印刷... Pipop 07/2/7(水) 21:11 発言[未読]
【46613】Re:オートフィルタで抽出したデータの印刷... VBA初心者 07/2/8(木) 8:26 お礼[未読]

【46600】オートフィルタで抽出したデータの印刷に...
質問  VBA初心者  - 07/2/7(水) 19:33 -

引用なし
パスワード
   仕事でexcelを使用しているのですが、列Aに商品コード・列Bに数量・列Cに仕入先コードという表を作っているのですが、仕入先コードが同じ商品が1ページになるように印刷(プリントアウト)したいと思います。
今は仕入先コード順にデータの並び替えを行い、その都度印刷範囲を指定してプリントアウトしているのですが、この一連の流れ作業をVBAで行うことができるのでしょうか?初心者で申し訳ありません。

【46601】Re:オートフィルタで抽出したデータの印...
発言  Pipop  - 07/2/7(水) 19:50 -

引用なし
パスワード
   ▼VBA初心者 さん

今晩は。
文章だけでは分かりにくいものですから・・・
具体的な表を明示される方が分かりやすいと思います。

再度提示しては如何でしょう。
現状の表とこのように纏めたい表を書いてください。

【46603】Re:オートフィルタで抽出したデータの印...
質問  VBA初心者  - 07/2/7(水) 20:19 -

引用なし
パスワード
   分かりづらくて申し訳ございませんでした。
表を作ってみました。こういった感じで並び替え→印刷をしたいと思います。宜しくお願い致します。

これは元になる表です。
列A      列B       列C  列D
コード     商品名     数量  コード
319670    商品名01    3   00001 
319671    商品名02    1   00001
316106    商品名03    1   00003
316100    商品名04    1   00002
319324    商品名05    1   00004
319667    商品名06    1   00001

これを、以下のように(列Dの番号が小さい順に)並び替えをしたいです。

319667    商品名06      1    00001
319670    商品名01      3    00001
319671    商品名02      1    00001
316100    商品名04      1    00002
316106    商品名03      1    00003
319324    商品名05      1    00004

並び替えして、(00001)の行のみ印刷→(00002)の行のみ印刷→(00003)の行のみ印刷→(00004)の行のみ印刷という感じで印刷したいです。

こういった表をプリントアウトしたいです。
319667    商品名06      1    00001
319670    商品名01      3    00001
319671    商品名02      1    00001

【46604】Re:オートフィルタで抽出したデータの印...
発言  Pipop  - 07/2/7(水) 21:11 -

引用なし
パスワード
   ▼VBA初心者 さん:

分かりやすくなりましたね。
こんな感じでしょうか
例えばG1に1〜4、5等の数字を入れて次のコードを動かされてみてください。
D列の「コード」でフィルターがかかると思います。

Sub test()
With Sheets("Sheet2")
 .Cells.ClearContents
End With
With Range("A1")
 .AutoFilter
 .AutoFilter field:=4, Criteria1:=Range("G1").Value
 .CurrentRegion.SpecialCells(xlVisible).Copy Sheets("sheet2").Range("a1")
End With
End Sub
後は、シート2を印刷するコードを付け加えてください。

【46613】Re:オートフィルタで抽出したデータの印...
お礼  VBA初心者  - 07/2/8(木) 8:26 -

引用なし
パスワード
   ▼Pipop さん:
丁寧なご説明ありがとうございました。
初心者なので時間はかかりそうですが、挑戦してみようと思います。
ありがとうございました。

6206 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free