アプリ版:「スタンプのみでお礼する」機能のリリースについて

お世話になります。

ネットでAccess97からAccess2003にバージョンアップを調べています。
簡単にバージョンアップできるのだと考えていましたが大間違いでした。

「Startup コマンド ライン オプション」で一括変換(97→2000)というサイトを見つけましたがどのように実行すればいいのでしょうか?
http://www.accessclub.jp/bbs2/0021/beginter07051 …

また「Microsoft Access Conversion Toolkit」というツールがある事を知りました。
試しにインストールしてチェックしてみたら、エラーがなかったのでAccess2003を起動してメニューバーの「ツール」→「データベースユーティリティ」→「データベース変換」→「Access2000 ファイル形式」を選択し、ダイアログでファイルを選択して[変換]ボタンを押下したら下記のメッセージが表示されました。

データベースの変換または復元をしているときにコンパイルエラーが発生しました。
これは、現在はサポートされていない、古いDAO構文によるものと思われます。
コードの修正方法の例を参照するためには[ヘルプ]をクリックしてください。

[OK]ボタンを押下したら、再度下記のメッセージが表示されました。

変換中にエラーが発生しました。エラーの詳細を見るには、[変換エラー]テーブルを開いてください。

再度、[OK]ボタンを押下したら、またメッセージが表示されましたので[OK]を押下しました。
変換されたAccessファイルを実行して[変換エラー]テーブルを開いたら下記の内容が追加されていました。

オブジェクトの種類|オブジェクト名|エラーの説明
モジュール    |       |"データベースの変換または復元をしているときにコンパイル エラーが発生しました。これは、現在はサポートされていない、古い DAO 構文によるものと思われます。コードの修正方法の例を参照するには [ヘルプ] をクリックしてください。"

どのようにAccess97からAccess2003にバージョンアップすればいいのでしょうか。
一般的にバージョンアップする手順はどれなのでしょうか。
似た質問をして申し訳ありませんがアドバイスいただけませんでしょうか。
宜しくお願いします。

A 回答 (1件)

> どのようにAccess97からAccess2003にバージョンアップすればいいのでしょうか。



> Access2003を起動してメニューバーの「ツール」→「データベースユーティリティ」→「データベース変換」→「Access2000 ファイル形式」を選択し、ダイアログでファイルを選択して[変換]ボタンを押下したら下記のメッセージが表示されました。

この方法で良いと思いますよ。
あとは、VBE の画面からコンパイルして
エラー箇所を特定して、つぶしていけば良いでしょう。

> コードの修正方法の例を参照するには [ヘルプ] をクリックしてください。
これは、やってみましたか?

経験的には、
97で「Miicrosoft DAO 2.5/3.5 Compatibility Library」を参照していた場合に
Recordset の Field の参照方法が 3.51以降で不可になるケースがあります。
例:
 ○ rst!フィールド1
 × rst.フィールド1

他にも、コンパイルエラーにはなりませんが、
Access 2000 以降はテキスト型はユニコードになりますので、
フィールドサイズはバイト数ではなく、文字数になります。
変換時にフィールドサイズは元のサイズと異なったものに
なっていますので、その点、注意が必要です。
 
    • good
    • 0
この回答へのお礼

返事が遅くなってすみません。

Access97のファイルを「Access2000 ファイル形式」に変換しました。
次に変換したAccessファイルを実行して、「Visual Basic Editor」を選択してコンパイルしてエラーを1つ1つ潰していく方法で修正していました。
VBAのフィールド参照箇所のコードを修正したんですが、次に下記のエラーが発生しました。

「コンパイルエラー
 Sub または Functionが定義されていません。」

コンパイルエラーが発生した箇所で右クリックして「定義」を選択したら下記のメッセージが表示されました。

「カーソル下にある識別子を認識できません。」

変換する前のAccess97を開いて上記のエラーが発生した関数の「定義」を選択したら、定義先の「モジュール」に遷移されました。
※Office97がインストールされているパソコンで開きました。

変換したAccess2003のモジュール(上記の遷移されたモジュール)を開いて内容を確認したら、関数がなくて内容も違っていました。
Access2003に変換すると自作した関数は消えてしまったり、変更されたりするんでしょうか。
この場合、どのように対処したらいいのでしょうか。
申し訳ありませんがアドバイスいただけませんでしょうか。
宜しくお願いします。

お礼日時:2009/01/19 12:26

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

関連するカテゴリからQ&Aを探す