電子書籍の厳選無料作品が豊富!

ACCESSでセキュリティ警告が出る事象について、アドバイスをお願いします。

やりたいことは、以下4点です。
(1)CSVファイル「C:\temp\File1.csv」をテーブル「T_File」としてインポートする。
(2)クエリ「データ確認」を表示する
(3)表示したクエリ「データ確認」をエクスポートする。
(4)エクスポートしたメッセージを表示する
※週ごとに実行したいので、最初にテーブル「T_File」を削除します。

フォームに設置したコマンドボタンを押すことで実行させたいと思っています。
理由は、インポートするCSVファイルがデータ項目の並びなど複数のパターンがあるためで、インポート定義を複数作成して、コマンドボタンを複数設置するつもりです。

以下が、1つのコードです。

-------ここから--------

Private Sub コマンド0_Click()
On Error GoTo Err_コマンド0_Click

DoCmd.OpenQuery "Q_Del", acViewNormal, acEdit
DoCmd.TransferText acImportDelim, "File1定義", "T_File", "C:\temp\File1.csv", False, ""
DoCmd.OpenQuery "データ確認", acViewNormal, acEdit
DoCmd.OutputTo acQuery, "データ確認", "MicrosoftExcelBiff8(*.xls)", "C:\temp\データ確認.xls", False, "", 0
MsgBox "データを 『 C:\temp 』 に出力しました。", vbInformation, "データ出力終了"

Exit_コマンド0_Click:
Exit Sub

Err_コマンド0_Click:
MsgBox Err.Description
Resume Exit_コマンド0_Click

End Sub

-------ここまで--------

なんとか思ったように動いているのですが、超初心者が見よう見まねで作成したためか、ACCESSを起動しようとしたり、最適化すると下記のようなメッセージが表示されます。

-------ここから--------
セキュリティ警告
このファイルに、意図的にお使いのコンピュータに損害を与えるコードが含まれる場合、ファイルは安全でない可能性があります。
-------ここまで--------

ここで、質問です。
私が書いたコードは、いろいろ調べてコピーして張り付けたものなので、何か書き方が違っていたり、足りないコードがあるのでしょうか?

もしくは、下記URLにあるようにセキュリティレベルを変更するかデジタル署名を使用することで回避できるのでしょうか?
http://support.microsoft.com/kb/884310/ja


このACCESSを他の事務所の方に展開して利用してもらおうと考えているため、セキュリティ警告が出ないようにしたいと思っています。
(みんなに嫌がられるので・・・)


超初心者のため、どのように伺えばいいのか難しく、表現がおかしかったり言葉足らずのことがあればご指摘ください。
良いアドバイスをお願いいたします!

A 回答 (1件)

2003からセキュリティが厳しくなって、マクロ付きのXLSファイルを開いたときのように


Accessでも確認メッセージが出るようになりました。
(私は2002 & 2010 しか持っていません)

VBAの記述方法によって出なくなる・・ということはありません。

載せられたリンク先はランタイム版の説明ですが、
他の方のPCにもAccessは入っているのですよね?

デジタル証明書については、私自身よく分かりませんが
下記リンク先の Wendy02 さんの回答が参考になるかと思います。
http://oshiete.goo.ne.jp/qa/2821283.html
かいつまんで言えば、
費用が発生する事と個人では取得が困難な点がネックになります。
セキュリティレベルを下げてもらうのが現実的な選択だと思います。

なお、蛇足ですが、Access 2007 SP2からは、MicrosoftExcelBiff8 オプションが消えてしまったようです。
Docmd.transferSpreadsheet メソッドを使われた方が良いかも知れません。
両者の結果を見て考えてみてください。
http://answers.microsoft.com/en-us/office/forum/ …
    • good
    • 0
この回答へのお礼

早速のご回答、ありがとうございます。
ソースの問題ではなく、MS-Officeのセキュリティの問題なのですね。
突き詰めると費用が発生するのであれば、nicotinismさんのおっしゃるとおり、私も「セキュリティレベルを下げてもらうのが現実的な選択」だと思いました。

現在、私はACCESS2003を利用しているのですが、他のメンバーはまだ2000を利用している方や、2010はいないと思いますが2007を利用している方もいるので「MicrosoftExcelBiff8 オプションが消えてしまった」という情報はとてもたすかります!

参照のURLが英文だったため、いまいち私の能力では理解しきれなかったのですが「Docmd.transferSpreadsheet」を検索してソースを修正したいと思います。

的確なアドバイスをしていただき、ありがとうございました!
自力でできるところまでがんばりたいと思います。

また、よろしくお願いいたします。

お礼日時:2012/08/16 22:05

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!