いつもお世話になってます。
マクロの記録で、シートの何箇所かの指定した部分のセルの色を白色にして印刷するマクロを作ったのですが、シートを保護すると自動で白色にしますが、印刷しません。
エラーの表示は、
「実行時エラー’1004’ InteriorクラスのColorIndeXプロパティを設定できません。」
です。
デバッグというところを押すと、
記述の「Selection.Interior.ColorIndex = 2」という部分が黄色くなっていました。
解消するにはどうすればよいのでしょうか?
どうぞご教示のほどよろしくお願いします。
【エクセル2003】
No.1ベストアンサー
- 回答日時:
シートの保護がかかっているため、マクロ内でセルの色が変更できないのだと思います。
対策はいろいろあると思いますが、以下のような感じでいかがでしょうか。
<その1>
ActiveSheet.Unprotect
Selection.Interior.ColorIndex = 2
ActiveSheet.Protect
として、セルの色を変えるときだけシート保護を解除する。
<その2>
ActiveSheet.Protect UserInterfaceOnly:=True
ActiveSheet.Range("A1").Interior.ColorIndex = 2
として、「画面からは変更できないが、マクロでは変更できるモード」のシート保護にマクロの中で変更する。
<その3>
ActiveSheet.Protect UserInterfaceOnly:=True
だけのマクロを作成し、シート保護をかけるときはExcelのメニューからでなく、上記マクロを実行して保護をかける。(元のマクロはいじらない)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Visual Basic(VBA) エクセルのマクロとシートの保護について教えてください。 1 2022/10/18 08:36
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/26 13:19
- Visual Basic(VBA) エクセル365のVBAで困っています。どう修正したらよいか添削をお願いします 2 2023/05/03 17:35
- Excel(エクセル) セルによって印刷するシートを変える方法 EXCEL-VBA 2 2022/08/01 20:48
- Excel(エクセル) エクセルのマクロで複数シートを両面印刷するには? 2 2022/12/08 23:23
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/11 13:29
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/08 09:08
- Excel(エクセル) 【Excel】エクセルの1シートが2枚に分割されてしまうので印刷プレビューを押して閉 4 2022/12/13 13:12
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
-
4
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
-
5
VBAでワークシートを引数としてサンプル関数に渡したい
Visual Basic(VBA)
-
6
Excel VBA Interior.Color
Visual Basic(VBA)
-
7
array関数で格納した配列の型を変更する
Visual Basic(VBA)
-
8
DATE型変数を初期化する方法
Visual Basic(VBA)
-
9
VBAでの結合セルのコピー&ペースト
Excel(エクセル)
-
10
エクセルでエラーが出て困っています。
Excel(エクセル)
-
11
マクロ 入力規則は残し文字のみ削除
Excel(エクセル)
-
12
エクセルvba (ByVal Target As Range)について
Excel(エクセル)
-
13
メッセージボックスを前面に表示させるには?
Visual Basic(VBA)
-
14
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
15
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
16
31:30:00が1900/1/1 7:30:0
その他(Microsoft Office)
-
17
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
18
コマンドボタンのキャプションが文字化けしたりする原因
Visual Basic(VBA)
-
19
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
20
フォントの大きさ
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
セルの一部分だけを太字にする方法
-
Excelのシート上のShapeにイベ...
-
エクセルで複数のシートのクリ...
-
Excelで数字を入れたら対応する...
-
Excel VBAでのWorksheet_Change...
-
エクセルのワークシート(テン...
-
自分の専門分野の仕事。初見で...
-
フォルダ内にある全ファイルの...
-
excel定数の違いについて。xlAu...
-
長い時間かかるマクロが実行中...
-
EXCEL マクロの記録で並べ替え...
-
エクセル初心者です 日報(Excel...
-
エクセルで検索バーのような表示
-
エクセルで特定の行だけ行削除...
-
Excelマクロでブック全体を検索...
-
EXCEL2002で、OnTime メソッド...
-
記録したマクロを他のシートに...
-
エクセルVBAでOUT LOOKメールに...
-
エクセルのチェックボックス誤作動
-
エクセルで○をつけるマクロ設定
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBAでのWorksheet_Change...
-
Excelで数字を入れたら対応する...
-
エクセルで複数のシートのクリ...
-
エクセルファイルを開いた回数...
-
Excelのシート上のShapeにイベ...
-
エクセルで特定の行だけ行削除...
-
長い時間かかるマクロが実行中...
-
エクセル シート内の一番下のセ...
-
【エクセル】フリーワード検索...
-
Excelでセル内の文字をファイル...
-
【エクセル】「実行時エラー’10...
-
シートではなくBOOK間で重複し...
-
フォルダ内にある全ファイルの...
-
EXCELのダイアログシートって、...
-
エクセル:セル内の文字列の最...
-
自分の専門分野の仕事。初見で...
-
セルの一部分だけを太字にする方法
-
エクセルで○をつけるマクロ設定
-
エクセル マクロ 一定時間おき...
-
Excelにて、同じ画像を複数のセ...
おすすめ情報