0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Accessをタスクスケジューラ経由で実行する際に個人的に気をつけてる点

Last updated at Posted at 2022-11-22

事前の動作確認方法

ファイルを直接実行
ではなく
タスクスケジューラ上のタスク右クリック ⇒ 実行する
で動作確認しよう。

『タスクスケジューラ経由で実行した時だけ動かない or 想定外の動作』
なんてことがよくある。
(Accessに限った話ではないけど)

タスク実行ユーザー

下記設定。
image.png

『SYSTEM』っていう名前のユーザーだとAccessが起動しないので注意。
(パスワード変更を気にしなくていいように『SYSTEM』を使いたいところだけどダメ)

『スリープなどによってユーザーがログアウト ⇒ タスクが実行されなかった』
なんてこともあるので、スリープまわりの設定も確認しておいた方がいい。

プログラム開始の設定

下記設定。
image.png

『Microsoft365のAccess』と『Accessランタイム』が共存する環境で、 プログラム/スクリプト にAccessファイルを設定するとランタイムで起動してしまう。
(本当はMicrosoft365で起動してほしいのに…)

なので、下記のように設定するのがおススメ。

image.png

プログラム/スクリプトに設定する例(Microsoft365の32bitでaccdbを起動させたい時)
"C:\Program Files (x86)\Microsoft Office\root\Office16\MSACCESS.EXE"
引数の追加(オプション)に設定する例
"C:\Users\d\tester.accdb"

Accessファイルを起動するのではなく、MSACCESS.EXEを起動する。
MSACCESS.EXEの引数でAccessファイルのパスを渡してあげる。

ダブルクオテーションの有無に注意。
(ファイルパスは囲っておいた方がいい)

Accessファイルに引数渡したい時は 引数の追加(オプション) を下記のようにすればOK。

Accessに引数渡す時の例
"C:\Users\d\tester.accdb" /cmd "accdbに渡す引数値"

Access内で扱うファイルパス

ファイル入出力まわりで想定通りの動作にならなかったら、下記リンク先の内容を試すのもアリ。

バージョン

Windows 10 Pro 21H2 OSビルド 19045.2311
Microsoft Access for Microsoft 365 MSO (バージョン 2209 ビルド 16.0.15726.20188) 32 ビット

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?