Excel VBA質問箱 IV

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

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


34915 / 76734 ←次へ | 前へ→

【47022】Re:印刷枚数を変数にする場合
回答  Kein  - 07/2/25(日) 14:13 -

引用なし
パスワード
   うまくできたとの事ですが、最初の質問と違って
>Set MyR = Range("A10:A68")
検索範囲が A10 からの場合、Match関数は 10行目 を 1 として
相対的な行を返します。つまり、仮に最大の数値が A12 で見つかった
とすると、変数 i には A12 の値ではなく A3 の値が入ることに
なります。その事を正しく認識されていれば良いのですが。
あと、検索範囲に数値が入力されていないとき、i = 0 として
PrintOut の引数に渡されてしまうから、If .Count(MyR) > 0 Then
の構文に Else を追加して、処理を中止させなくてはならないでしょう。
もちろん変数 i への代入は、右辺と左辺が逆なので完全に間違いと
言えます。これらの点を修正するなら

Private Sub CommandKYA4印刷_Click()
  Dim Mx As Integer, i As Integer
  Dim MyR As Range

  Set MyR = Range("A10:A68")
  With WorksheetFunction
    If .Count(MyR) > 0 Then
     Mx = .Match(.Max(MyR), Range("A:A"), 0) + 9
      i = Cells(Mx, 1).Value
    Else
     MsgBox "数値が入力されたセルがありません", 48
     Set MyR = Nothing: Exit Sub
    End If
  End With
  Set MyR = Nothing
  Application.ScreenUpdating = False
  Sheet4.PrintOut From:=1, To:=i, Copies:=1
  Application.ScreenUpdating = True
End Sub

2 hits

【47017】印刷枚数を変数にする場合 かとぼん 07/2/25(日) 9:37 質問
【47019】Re:印刷枚数を変数にする場合 りん 07/2/25(日) 9:57 回答
【47021】Re:印刷枚数を変数にする場合 かとぼん 07/2/25(日) 12:47 お礼
【47022】Re:印刷枚数を変数にする場合 Kein 07/2/25(日) 14:13 回答
【47020】Re:印刷枚数を変数にする場合 ぱっせんじゃー 07/2/25(日) 9:59 発言

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