Excel2010でフォームコントロールボタンが消える問題

このQ&Aのポイント
  • Excel2010で作成した工事台帳のフォームコントロールボタンが印刷後に消える問題について悩んでいます。
  • マクロで行っている印刷作業の中で、オブジェクトの選択と表示で「Button」のみが消える現象が発生しています。
  • 解決方法や原因を調べる時間が取れずに困っています。何か知恵をお持ちの方がいらっしゃれば助かります。
回答を見る
  • ベストアンサー

Excel2010でフォームコントロールボタンが。

工事台帳をEXCEL2010で作成しています。 シートには縦に3ページ分の入力フォームがあり、データ入力後に 印刷したいページをオプションボタンで選択後し、 印刷ボタン(フォームコントロール)を押すと 対象ページを印刷範囲設定して印刷、という作業を マクロで行っています。 このマクロはExcel2003で作成し(ファイル形式は.xls)、 Excel2010で変換(.xlsm)して使用しています。 このファイルで印刷ボタンを押すと、印刷後にボタンが消えてしまうのです。 何か規則性があるとかといろいろ調べてみたところ、「オブジェクトの選択と表示」 で「Button」となっているものだけが消えます。他にも、「Comment」、「テキストボックス」、 「Option Button」、「Group Box」、「AutoShape」、「Text Box」というものもあります。 書類作成期限の都合でここ数か月はショートカットでマクロを実行していますが なかなか調べる時間がとれずに解決に至りません。 何が原因かわかる方がいらっしゃいましたらお教えください。

  • OK_qa
  • お礼率85% (6/7)

質問者が選んだベストアンサー

  • ベストアンサー
  • ikataco3
  • ベストアンサー率60% (17/28)
回答No.1

私は経験がないので詳しくはわからないのですが、ボタンは見かけ上消えているだけではないでしょうか? 印刷処理をした後、表示位置がずれているとか、ボタンがあった位置をクリックすると印刷動作をすることはないでしょうか? 印刷処理をした後再描画する処理を加えるとボタンが復活するようなことがあるみたいです。

参考URL:
http://okwave.jp/qa/q4280164.html
OK_qa
質問者

お礼

ikataco3さん、回答ありがとうございます! お礼が遅くなり申し訳ありませんでした。 質問が分かりづらかったので覚え書の意味も込めて補足させてください。 問題のシートにあるボタンは 1.「工事台帳印刷」 2.「他シートへジャンプ」 3.「データ削除」 の3つで、2と3は問題なく機能します。 1は罫線「あり」と「なし」があり、「なし」の場合は別シートへジャンプ後に 印刷して「あり」のシートに戻ってくるという感じで、こちらも問題なく機能します。 問題は「罫線あり」で「工事台帳印刷」を実行した場合、1~3すべての ボタンが画面上から消えてしまうという状態です。 ikataco3さんの回答を読んで、表示位置がずれているかも?と 画面の表示倍率を10%まで小さくしてスクロールしてみたら “DCZ3164”というとんでもなく離れたセルあたりに消えたと思った3つの ボタンがありました! (回答の中にあったリンク先を参考にApplication.ScreenUpdating = Trueを 書き足してみましたが状況は変わらずでした) 移動距離に規則性があるのかと「工事台帳印刷」ボタンを“A1”セルに 移動して「工事台帳印刷」ボタンを押したら0.64cm×3.76cmのボタンが 2.35cm×14.1cmに巨大化しました。 この巨大化したボタンを手動で適当なサイズまで小さくしたところ、なぜか 問題の現象が起きなくなりました。他の2つのボタンについても同様に 操作することによって移動することがなくなりました。 ここで気がついたのですが、Excel2003で作成したファイル内のボタンを Excel2010上で書式設定を確認するとサイズタブの情報がブランクになっています。 この辺になにか理由がありそうな気がしますが、とりあえずこの状態でしばらく 様子を見てみようと思います。 ikataco3さんの回答がヒントになりました、ありがとうございます。

関連するQ&A

  • 【Excel VBA】ユーザーフォーム

    Excel2003を使用しています。 内容的には前回の(質問No.3376017)続きなのですが… あるシートに対して、印刷範囲指定のマクロを作りました。 印刷不要ページを指定して、それ以外のページを印刷するというもので、印刷開始ページ、終了ページ、不要ページをユーザーフォームを作ってテキストボックスに入力するようにしました。 そのテキストボックスの下に、『設定』と『キャンセル』のボタンを作っていますが、『キャンセル』を選択した場合は、このマクロを実行しないで終了させたいのですが、可能ですか? 『設定』と『キャンセル』の処理は、イベントプロシージャ(クリック)に記述していますが、『キャンセル』ボタンをクリックしたときにマクロを実行しないで終了するには、どのように記述すればいいでしょうか?[Exit]を使うのかな?と思って書いてみましたが、エラーが出てしまいました(^_^;) よろしくお願いします。

  • ユーザーフォーム上のボタンの使い方

    今、VBAの本とインターネットで調べながら初めてユーザーフォームを作成中ですが、 どうしてもわからないことがあり、ご質問させていただきました。 初歩的なことかも知れませんが、ご教授よろしくお願い致します。 1.オプションボタンを二つ作成しました。  一方を選択した場合、フレーム全体をグレーアウトに  することはできますか。  例)ユーザーフォーム上のオプションボタン  A:住所登録   (郵便番号・所在地等を入力)  B:電話番号登録 (電話番号を入力) ※Bをオプションボタンで選択した場合、Aのフレーム全体を  グレーアウト(入力禁止)にすることはできますか。 2.ComboBoxで"年"、"月"、"日"それぞれプルダウンで選択できるように  したのですが、ワークシートに反映する時、同一セルに入力するか、  それらの数字を認識して日付として一つのセルに表示することはできますか。  例)ユーザーフォーム上    2007▼年   4▼月  19▼日  ※一つのセルに“2007年4月19日”と表示することはできますか。 3.2.の続きで、"年"、"月"、"日"すべて選択している場合、  チェックボックスにチェックが入り、どれか一つでも空白の場合は  チェックボックスがグレーアウトしている、という状態はできますか。 4.ユーザーフォームで入力した内容がExcel上にどんどん   追加していく時のマクロはどのように記述したらいいのですか。  (ユーザーフォームに入力した内容を、セルを指定せずにどんどん  追記していく方法) 質問が多くて申し訳ございませんが、よろしくお願い致します。

  • エクセル2000と2007でボタン(フォーム)の認識が違って困っていま

    エクセル2000と2007でボタン(フォーム)の認識が違って困っています。 エクセル2007でシート内に設置したボタン(押したらマクロが実行されるように)をマクロで消したいと思い、「マクロの記録」にて以下のような記述で消すことができたのですが、これをエクセル2000(互換性にて)同じ事を行うとるすと、消そうするボタンが特定できず、、"Button 1"→"Button 10"と 変更すると消す事ができました。 ActiveSheet.Shapes("Button 1").Select Application.CutCopyMode = False Selection.Delete マクロでボタンやフォームを消す場合、はやり2000と2007とでは記述の仕方に違いがあるのでしょうか?できれば、どちらでも消せるようにしたいと思っております。 現状は2007用と2000用を別々にファイル作成しています。よろしくお願い致します。

  • フォームへの未入力を無くしたい

    [やりたいこと(宜しくおねがいします)] フォームの未入力「コンボボックス」と「テキストボックス」を事前に把握したい。 [(やりたいこと)の実現と希望] このサイトでアドバイスを頂きまして、長年に渡り作成できたデータベースが「68」、入力するフォームは「78」を超えます。現状「フォーム」の構成を生かす方法を含めアドバイスをお願いします。 [入力するフォームに共通していること] 1,コンボボックスとテキストボックス  ・全てのコンボボックスへの選択入力は必須になっている。  ・テキストボックスは未入力箇所も発生する。「未入力箇所は不特定」 2,フォームに共通して配している2つのコマンドボタン  ・フォームを閉じるボタン「マクロ(クリック時)」  ・情報の最新化ボタン「マクロ(クリック時)」   ※コンボボックスの選択項目追加時に反映用として配置 以上ですが、宜しくお願いします。

  • Accessのフォームでのボタンの作成について

    アプリケーションソフト「Microsoft Access」のフォームを作成しているのですが、ボタンの作成にてこずってます。 説明しますと、取引先のデータ一覧をクエリーで作成し、これをフォームで必要な項目(企業名、住所、業種等)を明記しようと思っています。そこで業種(例えば、金融、製造業、サービス業など)を数種類フォームに明記し、それをボタンを使って区分けしようと思ってます。とりあえずオプションボタンを使って8業種ほど作り実際にボタンを使ってみたのですが、1ページ目に選択したボタンは以降のページにも同様のボタンが選択されます。私は、1ページ目はAボタンをしようして2ページにはCボタンを、3ページ目にはEボタンと言う具合に、各ページ毎に違うボタンを選択できるようにしたく思います。 方法を教えてください。

  • エクセル 印刷プレビュー マクロフォームも印刷

    教えてください。 エクセルで VBAを使っています。 そのマクロをフォームのボタンを使って 1クリックで動くように、作成しました。 1シートに手順書のようなイメージでボタンを配置しています。 この状態で印刷をしたいのですが、 印刷プレビューで見たとき、並びに印刷したときに、 フォームのボタンが印刷されません。 「オプション」を見たのですが、そのような設定は ないようです。 どうしたら、印刷されるのでしょうか?

  • 【Excel】フォームを使ったマクロ記述について

    教えて下さい! マクロ初心者ですが、ユーザーフォームを使って以下のような対話型マクロに挑戦しています。 ワークシート内にあるフォームボタンをクリックすると下の内容を聞いてくるチェックボックスが出てきます。 「比較方法を選択して下さい。」  ・担当者別  ・箇所別 ”担当者別”にチェックを入れ、OKボタンを押すと”担当者選択”というリストボックスが出てきます。 ”箇所別”にチェックを入れ、OKボタンを押すと”箇所選択”というリストボックスが出てきます。 どちらにもチェックを入れずにOKボタンを押した場合、”エラー”というOKボタンのみのフォームが出て、OKボタンを押すと再度チェックボックスの画面に戻ります。 リストボックスやフォームは完成していて、いくつか「IF」や「Select Case」を使って行ってみたのですがうまくいきません。 困っています。 教えて下さい!!

  • 【Excel】オプションボタンで選択したら〇で囲む

    ご教授ください。 エクセルにてオプションボタンで選択したら選択した項目に〇をつけたいです。 例 〇男 〇女 〇その他 (↑このオプションボタンをどれか選択) ――――――――― 男 ←丸で囲われる) 女 その他 集計ではなく〇で囲われた方を印刷して使用したいです。 マクロを使用するのかルールで表示させる事が可能なのかどのようなやり方がスムーズなのかたどり着けません。 よろしくお願いいたします

  • EXCEL:フォームで作成したチェックボックス選択したのものみ表示

    EXCELのフォームのチェックボックスやグループ化したオプションボタンを多数使用したシートがあります。 チェックや選択したオプションボタンに応じて結果が同じシートに表示されるようIF関数を使用してます。 例)チェックボックス(1)「植物」にチェックがあり   グループ(1)はオプションボタン「赤」を選択   グループ(2)はオプションボタン「水」を選択   →『花』と表示   グループ(2)のオプションボタン「緑」を選択した場合は   →『木』と表示 選択した項目をペーパーで確認のために、選択した項目だけ別のシートに表示させ印刷したいのですが何か良い方法はないでしょうか。 チェックボックス一つに対してグループ約5つ というものが10個ほどあります。 チェックボックス(1)をチェックしたら、チェックボックス(1)とグループ(1)~(5)を別シートへ表示するといったようにしたいのですが・・・

  • <ACCESS>フォームのコマンドボタンについて

    宜しくお願いします。 フォームを作成するとき、ツールボックスから「コマンドボタン」を選択し、貼り付けると、前はウィザードが表示され、このボタンをクリックするとレポート印刷するとか、色々なことをウィザードで簡単にできたのですが、それが表示されなくなりました。 どうすれば表示されるのでしょうか?

専門家に質問してみよう