「Microsoft Access 2010」で、キャビネット上のAccessファイルを編集すると、以下のエラーが発生します。
エラーメッセージ
-------
コマンドまたはアクション" は無効です。
* データベースが読み取り専用であるか、以前のバージョンの形式から変換されていません。
* アクションの対象となっているオブジェクトで現在選択されているものがないか、アクティブ ビューにありません。
-------
この現象を回避する方法はありませんか。
拡張子:「mdb」「accdb」
DB形式:「2000」「2002-2003」「2007」
なお、エラーのOKを押して、更新を行うと、データは反映されています。
お問い合わせの事象は、「Microsoft Access 2010」のレジストリ値に起因する動作となります。
StarOffice Xではアプリケーションを起動する際の動作として、拡張子に関連付けされているレジストリの情報から起動コマンド、オプションを取得してアプリケーションを起動しています。
「Microsoft Access 2010」では、インストール時に登録されるレジストリの値が [ ] に変更されており、StarOffice Xではレジストリの情報に従いアプリケーションを起動するため本事象が発生します。
以下の設定により回避可能です。
以下は「Microsoft Windows 7」(レジストリ)での変更手順となります。
クライアント毎に対処が必要となります。
---------------------------------------------------------------------
(1). レジストリエディタを起動します。
[プログラムとファイルの検索]にregeditと指定後、regedit.exeを管理者として実行します。
または、[ファイル名を指定して実行]にregedit.exeと指定。
(2). 次のキーの配下にある"名前"が「(既定)」となっているデータの文字列を確認します。
HKEY_CLASSES_ROOT
→ <対象の拡張子>(例:.accdb)
名前 : (既定)
データ: <ここを確認します>
(例:Access.Application.14)
(3). 次のキーのデータの文字列が、対象の値となります。
データの値が [ ] であると思われますので削除してください。
HKEY_CLASSES_ROOT\[(2)で確認したデータ]\shell\Open\ddeexec\IfExec
名前: (既定)
データ: <ここの文字列>
例:HKEY_CLASSES_ROOT\Access.Application.14\shell\Open\ddeexec\IfExec
→ [ ] となっているので、 [ ] を削除します。
---------------------------------------------------------------------
以下は「Microsoft Windows XP」の場合となります。(上記のレジストリの手順でも可能です)
フォルダオプションから操作を行う場合の操作方法について記述します。
クライアント毎に対処が必要となります。
---------------------------------------------------------------------
(1) 任意のフォルダを開きます。
(2) メニューバーの「ツール」→「フォルダオプション」を開きます。
(3) 「ファイルの種類」タブを開きます。
(4) "登録されているファイルの種類"から、対象の拡張子を選択し、「詳細設定」ボタンをクリックします。
(5) 「ファイルの種類の編集」画面が起動し、中央に"アクション"が表示されます。
(6) "アクション"の"open"を選択します。
※openキーの変わりに"開く"等のキーになっている場合もあります。
(7) 編集を選択し、「アクションの編集画面」を開きます。
(8) "DDEアプリケーションが実行していないとき"の箇所を、空にしてください。
※「Microsoft Office 2010」ではここが [ ] で記述されていると思われます。
---------------------------------------------------------------------