アレルギー対策、自宅でできる効果的な方法とは?

Accessの32bit 64bit 互換について

お世話になっております。


access 2003(32ビット版)OS:WIndowsxpで作成されたファイル
(他社作成プログラムの為、プログラムの内容は不明です)を
access 2010(64ビット版)OS:windows7のインストールされている環境で、
参照または、実行できるのでしょうか?

特定プログラムだけか解りませんが、動作しない報告を受けています。
(すいません、対象の環境が手元にありません。)

調査方法や対処方法など教えて頂ければ助かります。

すいません、よろしくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

メモリ操作(バッファ処理など)・CPU操作(スレッド・プロセス処理)などの相当細かいプログラムが組まれていると、ビットによる互換性はなくなります。



OS特有の設定やDLLを参照するプログラムが組まれていなると、互換性はなくなります。

Access2003とAccess2010の互換性は完全ではないため、ここもチェックです。

とりあえず、プログラムの中身を調査しないと、原因や対処法は探せないと思います。
エラーが出たらエラー番号と内容とどういう操作で出たのかを確認し、他社プログラムの作成元の他社さんへ連絡したほうがいいと・・・・
    • good
    • 0
この回答へのお礼

ありがとうございます。

エラー番号を調査し、作成元に聞いてみます。

詳細が分かれば、ご報告致します。

お礼日時:2010/09/12 22:04

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QACCESSで作成したアプリケーションがACCESSランタイムで動かない?

ACCESSで作成したアプリケーションがあるのですが、顧客の要望でランタイムで運用したいと思っています。

ところが動作確認をすると、あるフォームを開く際に「実行時エラーが発生したため、このアプリケーションの実行は中断しました。
アプリケーションを続行できません。システムはシャットダウンされます。」

というダイアログを表示して、OKボタンを押すとアプリケーションが落ちてしまいます。

ランタイムではないACCESSでは問題なく動作するのですが、ランタイムでは何が違うのかわかりません。

動作環境
OS:WindowsXP
ACCESSランタイムは2003と2000 SR-1、ランタイムでないACCESSでも2003と2000 SR-1を試していますが、いずれの場合でもランタイムで上記の症状が発生し、ランタイムでない場合は発生しません。
Microsoft Jetは4.0にしてあります。

断片的なヒントでも結構です。また参考になるサイトでも結構ですのでご教示をお願いいたします。

Aベストアンサー

Accessの内部エラーが発生しているのですぐ落ちてしまう。
ランタイム条件によってフォームが実行される時に有効なコードが誤っているとか。(フォーム中のコードが削除したテーブルを開こうとしている。実行時のコードで誤ったロジックが含まれる。みたいな誤り)
エラーがコード内で発生しているがエラー処理を実装していないので落ちてしまうとか。

Qワード、エクセルの64bitと32bitでの互換性

64bitのPCを検討しています。
Windows7(64bit)のワード2007やエクセル2007で作成した文書ファイルは、32bitのXPやVistaのワード2003,2007、エクセル2003,2007で読み込み編集することができるのでしょうか?またその逆はどうでしょうか?
 bitの違いがワードやエクセルのデータの互換性に影響するのでしょうか?

Aベストアンサー

そもそも、エクセル、ワードに64ビット版はありません。
64ビットのWindowsを使っていても、32ビット版エクセル、ワードが問題なく動きます。当然データは32ビットの場合とまったく同じです。

64ビット版のWindowsを使う時に考えないといけないのは、データの互換性ではなくて、ソフトの互換性=いま持っているソフトは64ビット版Windowsでも動くか? です。
大部分の32ビットソフトはそのまま使えますが、なかには64ビット版のソフトに買い替えないと動かないものもあります。Photoshopなどがその代表です。

古いソフトも、大部分動きますが、32ビット版Windowsの初期のころのソフトには、インストーラのみ16ビットソフトのものがあり、これは64ビット版Winsowsではインストールができません。(おもしろい?ことにインストールのみ別にインストールした32ビット版Windowsをつかうと、インストール後のソフトは64ビットWindowsでも動きました。)
64ビット版OSは、32ビット版より目に見えて速いですから、ソフト互換性の問題がないなら、使うことをお勧めします。

そもそも、エクセル、ワードに64ビット版はありません。
64ビットのWindowsを使っていても、32ビット版エクセル、ワードが問題なく動きます。当然データは32ビットの場合とまったく同じです。

64ビット版のWindowsを使う時に考えないといけないのは、データの互換性ではなくて、ソフトの互換性=いま持っているソフトは64ビット版Windowsでも動くか? です。
大部分の32ビットソフトはそのまま使えますが、なかには64ビット版のソフトに買い替えないと動かないものもあります。Photoshopなどがその代表です。

...続きを読む

Q日付型のフィールドに空白を入れる方法を教えてください

ASP(VBScript)でSQLサーバにINSET INTO文を使ってデータを格納しているのですが、日付の部分がNULLの時、「1900/1/1」が入ってしまいます。
そのまま、空白を入れる方法はどうやったらよろしいのでしょうか?

TABLE1の内容は
番号|内容|日付です。

INSERT INTO TABLE1 VALUES ( 1, 'あいう', '')

結果
1|あいう|1900/1/1

Aベストアンサー

あとは、プログラムの書き方次第ですね、、、


If hensu=Null Or hensu="" Then
dt = "NULL"
Else
dt = "'" & hensu & "'"
End IF

E_SQL = "INSERT INTO TABLE1 VALUES & _
"( 1,'あいう', " & dt& ")"
の様に書きます。

QODBCの接続に失敗しました(3146)について

どうにもならなくて困ってしまいメールいたします。
現在、ウインドウズ98、アクセス2000という環境で作業をしています。このアクセスでは、日に1回、本社とのデータのやりとりを行っていますが、ある日から「ODBCの呼び出しに失敗しました エラーメッセージ3146」と出てしまうようになってしまいました。何が原因かもさっぱり分かりません。どんなことでもいいので助言お願いします。

Aベストアンサー

ODBCのエラーは、簡単には原因がわからない場合が
ほとんどです。

通常はコントロールパネルのODBCデータソースアドミニ
ストレータの「トレース」タブの中に、「トレースの開始」
というボタンがありますから、適当なファイル名を指定
してからこれを押します。

それからエラーがでる処理をAccessでやってみます。

するとODBCの呼び出し、通信の内容がログに吐かれます
からこれが解決の手がかりになると思います。専門家に
直してもらうにしてもこの情報は必要ですよ。

おそらく3146ならば、MDACがらみかと推測しますけど、
自信はありません。WindowsUpdateとかIEを6にしたとか
サービスパックとか・・考えられる原因はいっぱいあり
すぎて・・

Q64bitのMS Officeを使うメリットは?

MS Office2010は64bitでインストールができますよね。
ただ、マイクロソフトはあくまで32bitでのインストールを推奨しており、64bitだと何かのライブラリとかが使えなくなるとのことで、デメリットばかり目立つように思えます。

64bitで使うメリットは大容量のメモリを使えることだと思いますけど、画像処理ソフトでもない事務ソフトでそこまで恩恵を受けられるのかは疑問です。

MS Office2010を64bitでインストールする人は、何を求めて64bitを選ぶのでしょうか?
そんなにメモリを使います?

Aベストアンサー

32ビットを過去の遺物にするためです

CPUはとっくに64ビットになったのに
OSは32ビットを引きずっている
業務等で32ビットが必要な場合もあると思いますけれど
一般的な使用の人では影響が少ないと思います
64ビットが普及していかないと次が遅くなりますので
少しでも64ビットを普及させたいなーって64ビット対応品以外は
買わないようにしています

Officeではないですけれど
私のパソコンは24GBのメモリーを搭載していますけれど
メモリー不足で処理を停止中ですと毎日のように警告されてます

BOINCで12スレッド同時処理もしていますし
3画面でゲームと各種ツールや動画を
同時に実行しているので足りなくなっています

Q64bitから32bitへの変更

64bitから32bitへの変更
Windows7で、64bit版から32bit版への変更はできるのでしょうか?そのような変更モードが搭載されているのでしょうか?
もしできないなら、新たに32bit版のものをインストールすることになるのでしょうか?

また、使用するソフトに制限が生じるのでしょうか?
マイクロソフトのHP(http://windows.microsoft.com/ja-JP/windows-vista/32-bit-and-64-bit-Windows-frequently-asked-questions)では「32bit用に作られたプログラムは特に変更を加えなくても64bit版で実行できる」とありました。

64bit版と32bit版を用途に応じて使い分けられたら理想的で。いい方法を教えてください。

Aベストアンサー

貴方が市販パッケージのWindows7を購入しているのなら、パッケージの中に32bit版と64bit版のWindows7が両方入っている筈ですので、32bit版をインストールし直してください。(クリーンインストールしか出来ません。)

それ以外の場合、例えばパーツ屋でDSP版を買ったとか、7がプレインストールされたメーカー製PCを買った、とかであれば、貴方が選んだ(もしくは、初めから設定されていた)64bit版しか使用できません。
32bit版を使いたければ、新たに市販パッケージの32bit版7を購入して、クリーンインストールを。

なお、64bit版と32bit版を同時に使用することは出来ません。
どちらか片方しか認証出来ませんから。

また、64bit版と32bit版を使い分ける必要もありません。
大半のソフトは32bit版用に作られていても、何の問題も無く64bit版で動作します。

7だから動かないソフトはあっても、64bitだから動かないソフトは稀有です。
勿論、ドライバ等のようにシステムの根っこに関わるような物だと動かない場合もありますが。

余程高価な(10万円近くするような)ソフトの古いバージョンを動かす必要がある、とかでなければ、そのソフトをバージョンアップするなり、オンラインソフトなら同種の別ソフトに乗り換えるなり、いくらでも手段はあります。
周辺機器でも動かなくなるような物は一部だけですから、この期に及んで64bit版7をサポートしていないような機器であれば、買い換える方が良いでしょう。(もちろん、金額との兼ね合いですが。)

せっかく64bit版7を使っているなら、わざわざ32bit版にするよりも、64bit版で動くように合わせる方が賢明です。

貴方が市販パッケージのWindows7を購入しているのなら、パッケージの中に32bit版と64bit版のWindows7が両方入っている筈ですので、32bit版をインストールし直してください。(クリーンインストールしか出来ません。)

それ以外の場合、例えばパーツ屋でDSP版を買ったとか、7がプレインストールされたメーカー製PCを買った、とかであれば、貴方が選んだ(もしくは、初めから設定されていた)64bit版しか使用できません。
32bit版を使いたければ、新たに市販パッケージの32bit版7を購入して、クリーンインストール...続きを読む

QACCESS IIF関数 複数条件の設定について

 選択クエリにおいて、あるフィールド「 X」 のレコード数値が
 
  0<[X]<=50   であれば A 
  50<[X]<=100  であれば B 
  100<[X]<=150  であれば C

 と表記させるフィールド「Y」を追加したいと考えています。
 この場合、Yのフィールド設定で指定する数式についてご教授願います。

 一応、
  IIf(0<[X]<=50,"A","") Or IIf(50<[X]<=100,"B","") Or IIf(100<[X]<=150,"C","")

  としましたが、実行すると、Yの列がすべて「-1」と表記されてしまいます。

 何卒よろしくお願いいたします。

Aベストアンサー

a)IIF関数で対応する場合:
 IIF関数の第2引数または第3引数に、IIF関数を入れ子とする必要があります。

式: IIF([X]<=0, "", IIF([X]<=50, "A", IIF([X]<=100, "B", IIF([X]<=150, "C", ""))))


b)別の組込関数を使用する場合:
 IIF関数は二択ですので入れ子にする必要がありますが、Accessのクエリで
 使用できる、似た機能の関数に、Switch関数というものもあります。
 これであれば、入れ子にする必要がなくなります。
 (詳しくは、Accessのヘルプを参照下さい)

式: Switch([X]<=0, "", [X]<=50, "A", [X]<=100, "B", [X]<=150, "C", True, "")


なお、数学あるいは一般生活では確かに「0<[X]<=50」という表記をしますが、
Accessの関数などではこれだと正しい結果が得られません。
正しく認識させるためには、等号・不等号を挟んだ式は、「左辺」と「右辺」の
2つの要素からなる形にする必要があります。
(「0<[X]<=50」は「[X]>0 And [X]>=50」と分割してやる、と)

但し、今回のご質問のような『連続した範囲』であれば、前(左)で既出となる
式の要素で「[X]<=0」が「真(=-1)」とならなかった時点で、「[X]>0」が保証
されますので、上記のように、「[X]>0」を省略して「[X]<=50」だけを条件として
指定すればOk、ということになります。
(「0<[X]<=50」の次が「80<[X]<120」などのように、「50~80」が欠けた
 場合は、省略ができない、と)


【参考】
「0<[X]<=50」は、このままだと「0 < ([X]<=50)」という式と解釈されます。
この場合、「[X]<=50」は、「真(=-1)」か「偽(=0)」か「Null」のいずれかに
なります。
何にせよ、「0<[X]<=50」全体として「正(=-1)」となることがないため、
ご質問の式では、IIF関数は常に第3引数に指定された値「""」を返す
ことになります。

この結果、式全体としては「"" Or "" Or ""」という形となり、「0かNull」
以外なので、「真(=-1)」という値が返された、ということです。

なお、Nullについては、以前、他の方の質問につけた回答も、併せて参考までに:
http://oshiete.goo.ne.jp/qa/4850675.html

a)IIF関数で対応する場合:
 IIF関数の第2引数または第3引数に、IIF関数を入れ子とする必要があります。

式: IIF([X]<=0, "", IIF([X]<=50, "A", IIF([X]<=100, "B", IIF([X]<=150, "C", ""))))


b)別の組込関数を使用する場合:
 IIF関数は二択ですので入れ子にする必要がありますが、Accessのクエリで
 使用できる、似た機能の関数に、Switch関数というものもあります。
 これであれば、入れ子にする必要がなくなります。
 (詳しくは、Accessのヘルプを参照下さい)

式: Switch([X]<=0, "", [X]<=50, "A"...続きを読む

Q64ビットのOSと32ビットのOffice

64ビットのWindows7 のPCに 32ビットのMicrosoft Office を入れることは出来ますか?

もし可能なら、Officeの64ビットと32ビットの違いは何なのでしょうか。

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

Aベストアンサー

http://office.microsoft.com/ja-jp/word-help/HA010369476.aspx

既定では、コンピューターで 64 ビット版の Windows を実行している場合でも、Microsoft Office 2010 では 32 ビット版の Office 2010 がインストールされます。

32 ビット版の Office 2013は 64 ビット版と同じ機能を提供し、32 ビット版のアドインとも互換性があります。したがって、既定では 32 ビット版の Office 2013がインストールされます。 また、Office 2013では、Windows-32-on ...

http://technet.microsoft.com/ja-jp/library/ee681792.aspx

QAccessのRefresh・Requery・Repaintの違い

Requeryはもう一度ソースレコード(テーブル)を読み込むようです。このとき、テーブルの先頭レコードに移動してしまいます。
Refreshは最新のレコード(テーブル)を再表示するような気がします。レコードの移動は起こらない気がします。
Repaintは、VBAでキャプションなどを変更したとき使っています。
でも、よくわかっていません。
どんなときにどんなメソッドを使えばいいのでしょうか?
詳しい方、よろしくお願いいたします。

Aベストアンサー

たびたびすみません。
調べてたらこんなのがでてきました。
http://www.nurs.or.jp/~ppoy/access/access/acF007.html

参考URL:http://www.nurs.or.jp/~ppoy/access/access/acF007.html

QAccessのマクロでモジュールを実行させたい。

Access2002を勉強中の初心者です。

AccessでDB1という名前のデータベースを作成し、その中で、モジュール1というモジュールを作成しました。これを実行するマクロを作成したく、次のようにマクロを作成しました。
マクロのデザイン画面でアクションに「プロージャの実行」を選択、プロージャ名入力覧の右側の...のボタンを押して式ビルダ画面を表示、ここの「関数」フォルダを開いてDB1を選択、表示されたモジュール1を貼り付けてOK。
しかし、このマクロを実行すると、次のエラーとなります。「DB1 指定されたDB1が見つけることができない関数名が含まれています」

根本的に方法が間違っているのでしょうか?
アドバイスをよろしくお願いします。

Aベストアンサー

#1です。

ちょっと時間ができたので、Accessのヘルプで、
 "RunCode/プロシージャの実行" アクション
についてのトピックを見てみました。

結論から言うと、基本的な考え方が間違っているみたいです^^;。

「プロシージャの実行」アクションでは、「Function」プロシージャを指定するようです。
Subプロシージャではエラーになります。


つまりご質問の件では、
「Subプロシージャを呼び出すFnctionプロシージャ」をまず書かなけれえばならない。
そして、マクロのアクションでは、あらためてこのFunctionプロシージャを指定しなければいけません。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報