質問:
エクセルについて質問です。
ある計算表のブックがあります。シート1が入力シートになっていて、そのシートには関数があるためシートの保護とセルのロックを使って入力してほしいセル以外はロックしたいと思います。このブックにはマクロが登録されていて、入力用のシート1で入力した内容をおそらくフォームで作成したシート上の「印刷ボタン」を押すと、別の印刷用のシート2へ一瞬飛んで印刷用のシートが印刷される仕組みになっています。そのためかシート1を保護するとこのマクロが実行されません。マクロも実行できてシートの保護も出来るようなやり方はありませんか?詳しい方よろしくお願いします。
答え:
保護されてると実行できないコードもあるからかもしれませんね。
マクロの内容がわからないからなんともいえませんが。

マクロの一番最初の処理でブレイクポイント設定して動かしてみてください。
もしかしたら、エラー処理がされてて、エラーメッセージ出ないで処理終了してるのかもしれません。


この場合だと、マクロの最初で保護を解除して、最後に保護を設定するようにすれば回避できる。
補足の質問:
すみません。私もあまりマクロ詳しくないのでどう説明してよいのか分からず…回答くださって有難うございます。この質問・回答は役に立ちましたか?
答え:
こんばんは

???なんかおかしい?
シート保護をかけなければマクロは動いているのでしょうか?

動いているなら、たぶんボタンは利いていると思う。
確認のためマクロの最初の一行に(Sub〜の次の行) 『Msgbox "OK"』という一文を入れてシートを保護して実行してみてください。

何も変化が無ければボタンに原因あり
メッセージが出ればその後のコードに原因あり

ウェブサイトのユーザーによる情報ポスト、JPQA.comのない保証の正しさ.

  • 自宅用のデスクトップPC(2002年購入のxp)と仕事用...
  • PCでDVDを再生しているとき、ある場所で一時停止...
  • 今使っているパソコンにはマイクロソフトオフィス20...
  • 結婚式などに上映されるムービーを製作するのに(写...
  • auの冬モデル(W44K、W47T、W44s、DRA...
  • PENTAXのK10Dを購入予定(初心者です)でありますが...