Excel VBA質問箱 IV

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

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


17417 / 76738 ←次へ | 前へ→

【64775】Re:オートフィルタの変数代入
お礼  たうりん  - 10/3/12(金) 23:41 -

引用なし
パスワード
   ▼Jaka さん:
>>オートフィルタで12行ずつ選んで印刷しようとしています。
>>1以上〜12以下、13以上〜24以下、25以上〜36以下・・・
>これと、
>
>>1列目は、7行目に項目、8行目からデータが入っていて、印刷が必要な行に1が入るようにしています。
>これがどうつながるのか良くわかりません。
>
>んで、適当に解釈してみました。
>
>フィルタされている範囲を12行づつ選択。
>
>
データ有 n 品名   数量
 1  1  カバー   10
 1  2  パネル   20
 1  3  モール    30
   ・
   ・
   ・
 1  12  レンズ   40
 1  13  パッキン   50
 1  14  トメグ   60
 1  15  ネジ    70
   ・
   ・
   ・
   100
こんな表ですが、オートフィルタで12行ごとに絞って印刷させます。
教えて頂いたプログラムでは1行しか抽出できませんでした。
>Range("A1").AutoFilter Field:=2, Criteria1:="1"
>'↑
>'この部分は、動作にあったものに変えてください。
ここを変えなかったからだと思いますが・・・

なんとか以下のプログラムで動くようになりました。
Sub ()
Dim myRow1 As Integer
Dim myRow2 As Integer
 i = 8
 myRow1 = 1
 myRow2 = 12
Do
'梱包日報12行ごと印刷
Selection.AutoFilter Field:=2, Criteria1:=">=" & myRow1, Operator:=xlAnd, _
   Criteria2:="<=" & myRow2
 ActiveWindow.SelectedSheets.PrintPreview
 ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
   i = i + 12
   myRow1 = myRow1 + 12
   myRow2 = myRow2 + 12
Loop While Cells(i, 1).Value <> ""
'フィルタ解除
  Selection.AutoFilter Field:=2
  MsgBox "End", vbInformation
End Sub

お手数お掛けしました。
0 hits

【64766】オートフィルタの変数代入 たうりん 10/3/12(金) 14:04 質問
【64769】Re:オートフィルタの変数代入 Jaka 10/3/12(金) 15:33 発言
【64772】Re:オートフィルタの変数代入 たうりん 10/3/12(金) 15:49 発言
【64774】Re:オートフィルタの変数代入 Jaka 10/3/12(金) 16:55 発言
【64775】Re:オートフィルタの変数代入 たうりん 10/3/12(金) 23:41 お礼

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