タグ:Access ( 3 ) タグの人気記事
OfficePersonal2003とAccess2000混在時にエラー1706がでる

OfficePersonal2003とAccess2000が混在しているPCで、初めてOfficeを使うWindowsユーザでログオンし Excel を起動すると、インストーラウィザードが立ち上がり以下のようなエラーが表示されました。

エラー 1706. CD-ROM またはネットワーク上に製品 Microsoft Access 2000 をインストールするのに必要なファイルが見つかりません。 Windows インストーラはインストールを継続できません。


とりあえずエラー番号でググッてみたら、MSサポート:[OFF2000] 機能の追加中にエラー1706が発生する現象についてという情報があったんで試したんですが、解決しませんでした。
よくよく考えたらこのユーザはAdministratorsグループに属しているので、上記のサポート情報は関係ありません。

で、試しに、Access2000を先に起動して見ました。
使用者情報を入れるダイアログがあったので、そこで情報を入れてからAccessを終了し、Excelを起動したらエラーが出なくなりました。

どうやらAccess2000側に使用者情報が入ってなかったことが原因だったようです。
[PR]
by jehoshaphat | 2014-02-07 00:36 | 豆知識 | Trackback | Comments(0)
ExcelのデータをAccessにコピペしようとすると。。。
Excel でセルを選択し、コピー。Access で表示しているテーブルに貼り付けしようとすると下記のようなエラーになりました。
e0091163_2152494.jpg


「データが破損しているため、貼り付けできません。」っていったい何がおきたんだっ!?と思って調べたら、どうやらMSのアップデートがまずいようです。
こちらのブログを参考にさせていただくと、問題のアップデートはExcel 2007 セキュリティ更新プログラム (2008 年 12 月 9 日) KB958437のようです。
この問題に関する情報も[MS08-074] Excel 2007 セキュリティ更新プログラム (2008 年 12 月 9 日) についてで掲載されてました。
今のところはこの問題については、調査中と書いてます。

セキュリティ関係のアップデートなので、パッチをアンインストールするのは怖いため、いったんテキストエディタにコピペして、それを Access に貼り付けるようにしました。

ったくこんなんで10分無駄にしました。MSにはこまったもんです。
[PR]
by jehoshaphat | 2009-02-23 21:53 | 豆知識 | Trackback | Comments(0)
(SQL)Accessでは結合条件にLiteralが書けない!?
この直前の記事(SQL)SQLで区分などの複数の意味を持たせてるテーブルを何回も結合する方法でSQLを紹介しましたが、あのSQLをAccessで実行したら「JOIN式はサポートされていません。」というエラーが出ました。

いろいろ試したところどうやら結合条件(ON句)で下記のようにリテラルが使えないようです。

Customer.SettingDiv = 1 ←この1というリテラルがダメっぽい。

ということで、途方に暮れたのですが、同僚に聞いたところ副問い合わせを駆使することで解決しました。
下記のような感じです。(Access方言のため、JOINに括弧が入ってます)

SELECT Customer.ID ,
Customer.CustomerName ,
Customer.BloodType ,
BloodTypeText.Contents ,
Customer.Sex ,
SexText.Contents ,
Customer.Job ,
JobText.Contents
FROM (((Customer
LEFT OUTER JOIN
(SELECT *
FROM Setting
WHERE SettingDiv =1
) BloodTypeText
ON Customer.BloodType= BloodTypeText.SettingID)
LEFT OUTER JOIN
(SELECT *
FROM Setting
WHERE SettingDiv =2
) SexText
ON Customer.Sex = SexText.SettingID)
LEFT OUTER JOIN
(SELECT *
FROM Setting
WHERE SettingDiv =3
) JobText
ON Customer.Job = JobText.SettingID)


まったく、AccessのSQLにはやられますわ。
本当は使いたくないんですが、スタンドアロンアプリのデータ保存にはmdbが一番手軽なので、OLEDB経由で仕方なく使ってます。
[PR]
by jehoshaphat | 2008-11-29 19:57 | SQL | Trackback | Comments(1)