Excelを開くときにマクロを自動で有効にするには


kanon  2004-09-30 20:05:32  No: 85829

こちらに質問させていただくのは何回目になるでしょうか。。。
いつもお世話になっています。
kanonと申します。

VBからExcelを開いてシートの内容を更新する処理を行っているのですが、
そのExcelファイルにマクロが含まれているため、Excelを開く時に、
「〜はマクロを含んでいます。マクロにはウィルスが含まれている可能性が・・・」
のメッセージが表示されてしまいます。
  → Excel側で表示しないように設定はできるのですが・・・

このメッセージを表示させずに、常に「マクロを有効にする」で開きたいのですが
何か方法がありますでしょうか。

ユーザーによってはExcel側でマクロは常に無効にする設定になっていたりする
(Excel2002ではデフォルト)ので、メッセージが表示されずにマクロを無効で
開いてしまうときもあるんです。。。

また、私がおこなってる処理が、複数のExcelファイルを一括して処理するので
Excelファイルを開くたびに何度もメッセージが表示されてしまいます。

はやりExcel側でセキュリティを低にするしかないのでしょうか。

<コード>
---------------------------------------------------------------------
Public Sub Xls_Update(strFilePath As String)

Dim xls As Object

    If Dir(strFilePath) = "" Then
        MsgBox "ファイルが存在しません"
        Exit Sub
    End If
    
    Set xls = GetObject(strFilePath)        'ここでメッセージが表示

        <<開いたExcelシートを処理(セルの値を変更したり)>>      

    xls.Close (True)
    Set xls = Nothing

End Sub
---------------------------------------------------------------------

ご存知の方がいましたら、よろしくお願いします。。。


ファリンファリン  2004-10-01 01:23:54  No: 85830

恐らく

Application.DisplayAlerts = False

で可能でしょう。
これは、アプリケーションからのメッセージの表示・非表示を
設定するプロパティです。
ただし、これをFalseに設定してしまうと、上書きの警告や
シート削除の警告も表示しなくなりますのでご注意を。
一度、DisplayAlertsをお調べになって使ってみて下さい。


kanon  2004-10-01 02:21:37  No: 85831

ファリンファリンさん、ありがとうございます。

早速、試してみます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加