こちらに質問させていただくのは何回目になるでしょうか。。。
いつもお世話になっています。
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
---------------------------------------------------------------------
ご存知の方がいましたら、よろしくお願いします。。。
恐らく
Application.DisplayAlerts = False
で可能でしょう。
これは、アプリケーションからのメッセージの表示・非表示を
設定するプロパティです。
ただし、これをFalseに設定してしまうと、上書きの警告や
シート削除の警告も表示しなくなりますのでご注意を。
一度、DisplayAlertsをお調べになって使ってみて下さい。
ファリンファリンさん、ありがとうございます。
早速、試してみます。
ツイート | ![]() |