0

これが私の問題です。同じファイルにさまざまなグループのデータが含まれている、自分の管理外で作成されたcsvファイルがあります。最初の7行は、グループごとに異なる各グループのテーブルヘッダーです。したがって、最初にこのファイルをAccessの単一のテーブルにインポートします。それ以来、データ分析のために個々のグループにアクセスするためのクエリを作成しました。問題は、フィールドの1つで式を使用する必要があることですが、スプレッドシートからインポートするにはテキストである必要があるため、各列には上部のヘッダーのために数字と文字が含まれ、データがない場合もあるためです。正しい列にあり、マッサージする必要があります。したがって、私がやりたいのは、各グループを独自のテーブルに挿入することですが、式が機能するように、いくつかの列を数値に変換したいと思います。問題のある表現を投稿します。ありがとう。

    Sum(IIf([2000 Query].[Field19]=1,IIf([5000 Query].[Field21]>0,-[5000 Query].[Field21],[5000 Query].[Field21]),[5000 Query].[Field21])) AS [ADJ Invoice Total]
4

1 に答える 1

1

CDec:

IIf(CDec([2000 Query].[Field19])=1 ...

それはそのように機能します:

?cdec(" 20,121.34 ")
20121.34

したがって、コンマと先頭と末尾のスペースは問題ありません。

CDecはVBAで使用できますが、MSAccessクエリでは使用できません。クエリでは、Valは機能します。

IIf(Val([2000 Query].[Field19])=1 ...

またはCDbl。コンマ千の区切り文字と先頭と末尾のスペースを受け入れます。

于 2012-05-24T16:51:52.303 に答える