1

次のクエリを含む MS Access 2003 データベースがあります。

SELECT Replace(Trim(TABLE_A.Field_01), "XXX", "YYY") AS FLD01 FROM TABLE_A

この Access データベースから Excel で「データのインポート」を実行すると、データベースで定義されているこのクエリの名前が見つかりません。

Trim 関数を削除してクエリを変更すると、Excel でクエリを確認できます。

SELECT RTrim(LTrim(TABLE_A.Field_01)) AS FLD01 FROM TABLE_A

誰かが同様の経験をしたことがありますか?MS Access のクエリに適用できる関数の種類には制限があると思います。

Replace() 関数をサポートしていない MS Jet SQL に問題があるようです。Google で「Jet Sql Replace Function」というキーワードを検索すると、同じ根本原因を持つさまざまな問題に関する多くの参照が得られますが、私はまだまともな解決策を見つけていません...

4

2 に答える 2

4

Trim() 関数は SQL の一部ではない (VBA.Strings ライブラリに存在する) ため、MS Access の外部では呼び出すことができませんでした。

したがって、任意の SQL 関数を使用できますが、「外部」は使用できません。

于 2013-10-28T08:00:18.787 に答える