Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9492 / 13644 ツリー ←次へ | 前へ→

【27028】マクロの削除(プロジェクトへのアクセス) 夜更かし野郎 05/7/26(火) 20:49 質問[未読]
【27029】Re:マクロの削除(プロジェクトへのアクセ... ichinose 05/7/26(火) 21:21 発言[未読]
【27030】Re:マクロの削除(プロジェクトへのアクセ... 夜更かし野郎 05/7/26(火) 21:34 お礼[未読]

【27028】マクロの削除(プロジェクトへのアクセス...
質問  夜更かし野郎  - 05/7/26(火) 20:49 -

引用なし
パスワード
   VBA初心者です。皆さんのお力をお借りしたいと思います。
宜しくお願いします。

CSVファイルの内容を、マクロを組んだブックのワークシートにコピーし、
「名前をつけて保存」するという処理を作りました。

しかし、別名で保存された後のブックにこのマクロは不必要ですので、
削除したいと考えています。

過去のレスを見て、

  Dim VBC As Object
  With ThisWorkbook.VBProject
    For Each VBC In .VBComponents
     Select Case VBC.Type
       Case 1, 2, 3
        .VBComponents.Remove VBC
       Case 100
        With VBC.CodeModule
          .Deletelines 1, .Countoflines
        End With
     End Select
    Next
  End With

という処理を加えましたが、
マクロを実行すると
「プログラミングによるVisual Basicプロジェクトへの
 アクセスは信頼性に欠けます」
というエラーがでます。

改善策が全く分かりません。
アドバイスをお願い致します。

【27029】Re:マクロの削除(プロジェクトへのアク...
発言  ichinose  - 05/7/26(火) 21:21 -

引用なし
パスワード
   ▼夜更かし野郎 さん:
こんばんは。

>VBA初心者です。皆さんのお力をお借りしたいと思います。
>宜しくお願いします。
>
>CSVファイルの内容を、マクロを組んだブックのワークシートにコピーし、
>「名前をつけて保存」するという処理を作りました。
>
>しかし、別名で保存された後のブックにこのマクロは不必要ですので、
>削除したいと考えています。
>
>過去のレスを見て、
>
>  Dim VBC As Object
>  With ThisWorkbook.VBProject
>    For Each VBC In .VBComponents
>     Select Case VBC.Type
>       Case 1, 2, 3
>        .VBComponents.Remove VBC
>       Case 100
>        With VBC.CodeModule
>          .Deletelines 1, .Countoflines
>        End With
>     End Select
>    Next
>  End With
>
>という処理を加えましたが、
>マクロを実行すると
>「プログラミングによるVisual Basicプロジェクトへの
> アクセスは信頼性に欠けます」
>というエラーがでます。

Excel2002からは、
「ツール」---「マクロ」----「セキュリティ」とクリックし、
セキュリティダイアログの「信頼のおける発行元」タブで
「Visual Basicプロジェクトへのアクセスを信頼する」にチェックを入れないと

上記のコードは実行できません。
しかも既定はノーチェックです。

>CSVファイルの内容を、マクロを組んだブックのワークシートにコピー

ではなく、マクロの記述していない別のブックにCSVファイルの内容をコピーすれば

上記のようなVbprojectを操作するコードは要らないと思いますが、

検討してみてください。

【27030】Re:マクロの削除(プロジェクトへのアク...
お礼  夜更かし野郎  - 05/7/26(火) 21:34 -

引用なし
パスワード
   ▼ichinose さん:
>Excel2002からは、
>「ツール」---「マクロ」----「セキュリティ」とクリックし、
>セキュリティダイアログの「信頼のおける発行元」タブで
>「Visual Basicプロジェクトへのアクセスを信頼する」にチェックを入れないと
>
>上記のコードは実行できません。
>しかも既定はノーチェックです。

なるほど、セキュリティの問題だったんですね。
勉強になりました。
私の知識の範囲では、検討もつかない答えですね(笑)


>
>>CSVファイルの内容を、マクロを組んだブックのワークシートにコピー
>
>ではなく、マクロの記述していない別のブックにCSVファイルの内容をコピーすれば
>
>上記のようなVbprojectを操作するコードは要らないと思いますが、

! 確かに、そうですよね。すごくシンプルです!
早速、コードを書き直します。
すばやい回答を、本当にありがとうございました。

9492 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free