
No.3ベストアンサー
- 回答日時:
こんにちは。
Wendy02です。>まず新規ブックにシートをコピーしてブック内でコピー→値貼り付けという流れになっています。そうするとどうしてもマクロまで持ってきちゃうんですよね……。
それは、ありえないと思いますね。
>→標準モジュール自体ありませんし、
> シートのモジュールもThisWorkBookにも一行も存在しません。
> なぜでしょうか?
もし、本当に、プロジェクト・エクスプローラのすべてのVBE を開いても分からないというなら、コンパイル型マクロのウィルス感染しかありません。
ただ、セキュリティの警告が出たときに、そのメッセージの内容をチェックしてください。必要ならメモをしてもよいです。(ちゃんと出てきてはいませんが、ある程度は分かります)
最初に、セキュリティ警告ダイアログで、
---------------------------------------------
"C:\.................." ←ここを良くみてほしいです。
(省略されていますが、なんとか分かるはずです)
以下の発行者によるマクロが含まれています。
(ないばあいもある)
---------------------------------------------
とか出てきます。
次に、セキュリティの「信頼出来る発行元[タブ]」の部分で、
少なくとも、
組み込み済みのアドインテンプレートをすべて信頼する
にはチェックが入っているのでしょうか?
他にも、まだあります。私は、あまりこういう質問は得意でないというか、あれもこれも、と考えてしまうので、一般の回答者さんのように、「キメウチ」的に回答することが出来ません。もともと、セキュリティのオプション自体が、極論的には、一般のVBAプログラマ(CA認証を持たない製作者)が不要だという発想にあるものだと思っていますので、一旦は解決したと思っても、次期バージョンでは別の設定が発生したりします。なお、「低」でも、ウィルス感染自体は、アンチウィルスがあれば、本来は関係ありません。アドイン・プログラムの種類によっては、MS自身が「低」を勧めていたりするのですから、いかに、その設定は「不毛」なのか分かります。単に、マクロが入っています、程度のものしかないのです。
なお、#2のコードの
Worksheets("Sheet1").Range("A1").PasteSpecial (xlPasteValues)
↓
Worksheets("Sheet1").Range("A1").PasteSpecial
に変えていただければ、データ全部をコピーします。
シートのローカルマクロまでは、オブジェクトの単位が違いますので、コピーはされません。
御礼が遅くなりまして、申し訳ありませんでした。
何度もご回答いただき、本当にありがとうございました。
Wendy02さんのご回答は、いつも丁寧で適切で助かっています。
さて、
>→標準モジュール自体ありませんし、
> シートのモジュールもThisWorkBookにも一行も存在しません。
> なぜでしょうか?
↑は解決しました。参考までに書きますと、
VBAでVBAのコードを削除した後、一度コンパイルまたは上書き保存すれば"マクロの無効・有効"を聞いてくることはなくなりました。
そりゃそうですよね……。
今回はとても助かりました、感謝します。
また質問することがあると思いますが、見かけたらまたよろしくお願いしますね!
No.2
- 回答日時:
こんにちは。
Wendy02です。そのおっしゃっていたサイトのコードは、あまり参考にする内容でもないかもしれませんね。独特な書き方ですから。
>しかも、生成されたブックにマクロ記述は1行もないのに起動時にマクロの有効・無効を聞いてきます(なぜでしょう?)。
『標準モジュール』があれば、それだけで、マクロがあると言ってきます。それを開放していただかなくてはなりません。
本来は、MS-Office のセキュリティの問題も書かなくてはならないのですが、そのセキュリティというのは、実際に、ウィルス自体を防げればよいのですが、それは無理です。単に、マクロを働かせたくない人のオプションでしかありません。最終的には、一般ユーザーから、事実上、VBAを取り上げる気のような気がします。
それはともかくとして、
>あるブックのシートをコピーして"値だけ貼り付け"をしたい、です
オーソドックスな書き方をすると、このようになりますね。
ActiveWorkbook.Worksheets("Sheet1").Cells.Copy
Workbooks("TestBook.xls").Activate
Worksheets("Sheet1").Range("A1").PasteSpecial (xlPasteValues)
'ブック名は任意
再度のご回答、ありがとうございます。
大変参考になりました!
しかし、
>『標準モジュール』があれば、それだけで、マクロがあると言ってきます。
→標準モジュール自体ありませんし、
シートのモジュールもThisWorkBookにも一行も存在しません。
なぜでしょうか?
あと、完全に私の質問が浅かった(不足していた)のですが、
書式も含めての値コピーがしたかったわけです。
よって、まず新規ブックにシートをコピーしてブック内でコピー→値貼り付けという流れになっています。そうするとどうしてもマクロまで持ってきちゃうんですよね……。
No.1
- 回答日時:
こんにちは。
>・あるシートのマクロ記述を消すには、どうマクロを組めばよいか?
Excel2002以上のバージョンでは、VBE に直接アクセスするのは、ウィルスもどきの行為として、禁止されておりますので、設定によって、禁止のメッセージが出てくるはずです。
どのようなマクロかは分かりませんが、
ActiveWorkbook.Worksheets("Sheet1").Cells.Copy _
Workbooks("TestBook.xls").Worksheets("Sheet1").Range("A1")
'ブック名は任意
として、シートの表面を取得して、別のブックのシートに貼り付ければ、付随するコードはコピーはされません。
いつもご回答ありがとうございます。
実は質問しながら自分でもいろいろ探してみたのですが、
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub0 …のサイトの
"マクロを除いた配布用ブックを作成する。"を参考に組んでみました。
ところが、Wendy02さんもおっしゃられている通りに
プロファイルごとにセキュリティの設定を変更しなければならないようです。
しかも、生成されたブックにマクロ記述は1行もないのに
起動時にマクロの有効・無効を聞いてきます(なぜでしょう?)。
また、そもそものやりたいことは
あるブックのシートをコピーして"値だけ貼り付け"をしたい、です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
EXCELのVBAでシートコピーをしたとき元のマクロを削除するには?
Excel(エクセル)
-
【Excel VBA】シートコピー時、マクロコードはコピーしたくない
Access(アクセス)
-
マクロ ブックをマクロなしでコピー
Access(アクセス)
-
-
4
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
-
5
マクロでマクロを削除する
Excel(エクセル)
-
6
エクセルVBA シート上にあるコマンドボタンを削除するには?
Excel(エクセル)
-
7
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
8
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
9
マクロ実行ボタンを自動削除したい
Excel(エクセル)
-
10
【ExcelVBA】指定の書式で、マクロなしブックとしてAlertなしで別名保存する方法
Visual Basic(VBA)
-
11
Excel VBA マクロ シートコピー
Visual Basic(VBA)
-
12
エクセルVBA 作業後に選択範囲を解除する方法
Excel(エクセル)
-
13
Excel VBAでのWorksheet_Changeが動作しない原因
Excel(エクセル)
-
14
UserForm1.Showでエラーになります。
工学
-
15
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
16
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
17
エクセルのマクロで結合セルに値を貼り付けたい
Excel(エクセル)
-
18
ExcelのVBA。public変数の値が消える
Visual Basic(VBA)
-
19
VBAでセルに入っている日付をシート名にする
Excel(エクセル)
-
20
【vba】指定範囲の中に任意の文字があるときの条件分岐
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
WPSOffice_マクロの有効化について
-
Excel マクロの編集がグレーに...
-
エクセルの表を複数枚印刷した...
-
Excelのマクロでボタンを押すと...
-
エクセルで、「いいね」のよう...
-
エクセルの、記録を終了したマ...
-
EXCELのマクロが他のパソコンで...
-
エクセルマクロで、別のブック...
-
Excelマクロをバックグラウンド...
-
エクセル マクロ名にブック名...
-
複数のマクロボタンをまとめて...
-
Excelマクロで、稼働中のマクロ...
-
Excelのマクロでフリーフォーム...
-
エクセルからワードのマクロを...
-
リーグ戦(10チーム2コート)作...
-
強制的にマクロを有効にするVBA
-
バッチファイルファイル→VBS→エ...
-
Ctrl+Zが使えない
-
別シートのマクロボタンをマク...
-
Excelのマクロ名の並び順の法則...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
WPSOffice_マクロの有効化について
-
Excelのマクロでボタンを押すと...
-
エクセルの表を複数枚印刷した...
-
Excel マクロの編集がグレーに...
-
エクセルマクロで、別のブック...
-
エクセルの、記録を終了したマ...
-
エクセル マクロ名にブック名...
-
エクセルで、「いいね」のよう...
-
複数のマクロボタンをまとめて...
-
リーグ戦(10チーム2コート)作...
-
エクセルでマクロ(Excel 4.0)...
-
マクロ実行ボタンを自動削除したい
-
Excelマクロをバックグラウンド...
-
Excelマクロで、稼働中のマクロ...
-
Excelのマクロの復元
-
(Excel VBA)シートコピー時マ...
-
別シートのマクロボタンをマク...
-
マクロをマクロを使ってコピー...
-
エクセルでマクロを確認できな...
-
エクセルで明日の日付を表示す...
おすすめ情報