すぐに役立つエクセルVBAマクロ集 すぐマク
すぐに役立つ Excel VBA マクロ集 Excel VBA Macro
FAQ
Google
 
Home |  What's New! |  Gallery |  Introduction |  Service |  Profile 500連発・組み方講座フォロー Big Color Pallet
[広告]
Excel VBA Macro
Excel DownLoad
© 1997 - 2007
永井善王.
All RightsReserved.
HappyTech & Co., Ltd.
www.happy500z.com
Excel VBA Macro ・ ユーザーフォーム ・ FAQ
ユーザーフォームが印刷プレビューにくっついてしまうが?
Question 65.3 Previous Next
私が質問してしまってもいいのでしょうか?
分からないのでためしに送って見させて下さい。 すみません。よろしくお願いします。
印刷プレビューを表示する場合に、UserFormに OptionButtonを作ってプレビューするシートを選択して、表示させたいのです。 そこで以下のように VBAに書いたのです。
Private Sub commandButton1_Click()
    If UserForm1.OptionButton1.Value = True Then
        Sheets("○○").PrintPreview
    ElseIf UserForm2.OptionButton1.Value = True Then
        Sheets("××").PrintPreview
    End If
End Sub
のように書くとプレビューは表示されますが、UserFormがぺったりくっついたままになってしまい、その後のエクセルの使用が不可能になってしまいます。
PrintPreviewではなく、Selectにすると動きますし、一旦 Selectにしてから PrintPreviewするなどやってみたのですが、どれも UserFormが消えてくれません。 よろしければお教えいただくと嬉しいです。
Answer   Copyright (C) 2004.1.27 永井善王
カウンタ 170万突破記念で質問をお受けしています。先着3名様1人1問限りですが、どなたでも結構ですよ。
ユーザーフォームを表示したままで印刷プレビューすることは不可能と思います。 一旦ユーザーフォームを閉じてから、印刷プレビューしてください。
ついでですが、5行目の ElseIf文に続く UserForm
2、そして OptionButton1 とある番号が逆ではありませんか?
Private Sub commandButton1_Click()
    If UserForm1.OptionButton1.Value = True Then
        Unload Me
        Sheets("○○").PrintPreview
    ElseIf UserForm1.OptionButton2.Value = True Then
        Unload Me
        Sheets("××").PrintPreview
    End If
End Sub