• 締切済み

チェックボックスの使い方

チェックボックスの使い方 エクセルでの質問です ユーザーフォームにシート名を入れたチェックボックスが、6こ付いており チェックを入れたシートのみを印刷(コマンドボタンで実行)しようとしております 以下のコードを印刷のコマンドボタンに埋め込みました --------------------------------- Private Sub CommandButton1_Click() On Error GoTo HandleErr Dim i As Integer For i = 1 To Sheets.Count If Me.Controls("CheckBox" & i).Value Then Sheets(i).PrintOut End If Next i Exit Sub HandleErr: MsgBox "印刷シートが選択されていません" End Sub --------------------------------- (1)印刷が正常になされても”印刷シートが選択されていません” とメッセージボックスがでてしまいます チェックされていない場合はエラーメッセージを出しつつ、回避する方法を教えて下さい (2)各シート内の使用されている任意のセル範囲を印刷したいのですが、 どのようなコードをどの位置で使用すればよろしいでしょうか? 素人的な質問で申し訳ありません よろしくご回答願います

みんなの回答

  • layy
  • ベストアンサー率23% (292/1222)
回答No.2

まず1行ずつステップ実行しましたか?。 シートのカウンタとチェックボックス6つのカウンタは同じiでいいのでしょうか。シート7つあるときおかしいですか?。 印刷後ということはiが2以降の動作があやしいと思います。

y-bankrupt
質問者

お礼

回答ありがとうございます No.1の方の言われたとおりerrorを外して1行づつチェックしました チェックボックスにチェックがないことはこのコードではエラーにはならないようです blcheckboxを使わないといけないようです

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.1

とりあえず >(1)印刷が正常になされても”印刷シートが選択されていません” >とメッセージボックスがでてしまいます なので何かしらのエラーがでてるのだろうとおもいます。 ↓をコメントアウトして調べたら? On Error GoTo HandleErr

y-bankrupt
質問者

お礼

回答ありがとうございます errorを外して一行づつ確認しました チェックボックスはこのままではエラー認識しないようで blcheckboxを使わないとダメなようです

関連するQ&A