現在オフラインです。再接続するためにインターネットの接続を待っています

お使いのブラウザーはサポートされていません

このサイトを利用するには、ブラウザーを更新する必要があります。

Internet Explorer を最新バージョンに更新する

Office 2003 Service Pack 3 のインストール後に Access 2003 でコンボ ボックス コントロールおよびリスト ボックス コントロールに値が表示されないか正しくない値が表示される

Office 2003 のサポートは終了しました

マイクロソフトでは、2014 年 4 月 8 日に Office 2003 のサポートを終了しました。この変更は、ソフトウェアの更新プログラムおよびセキュリティ オプションに影響しています。 この変更の意味および保護された状態を維持する方法について説明します。

現象
次のような状況を考えます。
  • 以下のプログラムがインストールされています。
    • Microsoft Office Access 2003
    • Microsoft Office 2003 Service Pack 3 (SP3)
  • フォームまたはレポートにコンボ ボックス コントロールまたはリスト ボックス コントロールを追加します。
  • そのコントロールの "値集合ソース" プロパティに SQL ステートメントを設定します。
この状況で、次のいずれかの現象が発生します。

現象 1

コントロールに値が表示されません。期待される動作は、SQL ステートメントから返されるフィールドの値が表示されることです。

現象 2

コントロールには、Yes 値に対して -1、No 値に対して 0 が表示されます。期待される動作は、Yes 値に対して Yes、No 値に対して No が表示されることです。

これらの現象は、Office 2003 SP3 で更新された Access 2003 より前のバージョンの Access 2003 では発生しません。
原因

原因 1

この問題は、次のいずれかの条件に該当する場合に発生します。
  • SQL ステートメントで返されるフィールドのデータ型がテキスト型であり、このフィールドの表示書式が既に設定されている。
  • SQL ステートメントにより、Excel ワークシートにリンクしているテーブルの値を含むフィールドが返される。さらに、これらの値が格納されている Excel ワークシート内のセルに、[文字列] のプロパティが設定されている。
この問題を回避するには、「回避策 1」を参照してください。

原因 2

この問題は、SQL ステートメントによってデータ型が Yes/No 型 (Bit 型) のフィールドが返される場合に発生します。この問題を回避するには、「回避策 2」を参照してください。
回避策

回避策 1

この問題を回避するには、問題の原因に応じて、次のいずれかの方法を使用します。

方法 1

このフィールドに設定した表示書式を削除します。これを行うには、次の手順を実行します。

: 「原因 1」の最初の条件に該当する場合に、この方法を使用してください。
  1. このフィールドを含むテーブルをデザイン ビューで開きます。
  2. このフィールドに移動し、[標準] タブをクリックします。
  3. [標準] タブの [書式] ボックスで、設定されている書式を削除します。
  4. [ファイル] メニューの [上書き保存] をクリックします。
  5. [ファイル] メニューの [閉じる] をクリックします。

方法 2

"値集合ソース" プロパティのフィールドに "" を追加するように SQL ステートメントを更新します。これを行うには、次の手順を実行します。

: 「原因 1」の 2 番目の条件に該当する場合に、この方法を使用してください。

たとえば、次の SQL ステートメントがもともと設定されているとします。
SELECT FieldName FROM LinkedSpreadsheetName
この SQL ステートメントを次のように更新します。
SELECT FieldName & "" FROM LinkedSpreadsheetName
: [文字列] のプロパティが設定されている列を Excel ワークシートからインポートすると、Access 2003 では、対応するフィールドに表示書式としてアット マーク (@) が自動的に設定されます。

回避策 2

この問題を回避するには、以下の手順を実行します。
  1. "値集合ソース" プロパティに対して適切な値が返されるように、SQL ステートメントを更新します。以下に例を示します。
    • 次の SQL ステートメントでは、Yes 値に対しては Yes を、No 値に対しては No を表示するように、コントロールが設定されます。
      SELECT TableName.YesNoFieldName, IIf([YesNoFieldName]=-1,"Yes","No") AS YN_Value FROM TableName
    • 次の SQL ステートメントでは、Yes 値に対しては True を、No 値に対しては False を表示するように、コントロールが設定されます。
      SELECT TableName.YesNoFieldName, IIf([YesNoFieldName]=-1,"True","False") AS YN_Value FROM TableName
    • 次の SQL ステートメントでは、Yes 値に対しては On を、No 値に対しては Off を表示するように、コントロールが設定されます。
      SELECT TableName.YesNoFieldName, IIf([YesNoFieldName]=-1,"On","Off") AS YN_Value FROM TableName
  2. コントロールによって正しい値が表示されることを確認します。これを行うには、次の表に記載されているように、他のプロパティに適切な値を設定します。
プロパティ
連結列1
列数2
列幅0cm; 1.27cm
解決方法
この問題を解決するには、Access 2003 Service Pack 3 以降の修正プログラム パッケージ (2007 年 12 月 18 日) を入手します。詳細を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
945674 Access 2003 Service Pack 3 以降の修正プログラム パッケージ (2007 年 12 月 18 日) について
状況
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。
プロパティ

文書番号:945280 - 最終更新日: 02/12/2008 01:59:17 - リビジョン: 2.1

  • Microsoft Office 2003 Service Pack 3
  • kbexpertiseadvanced kbtshoot kbprb KB945280
フィードバック
mp;t=">amp;t=">t/javascript" src="https://c.microsoft.com/ms.js"> protocol) + "//c.microsoft.com/ms.js'><\/script>");