• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Access Dcount関数で引数が指定できない)

Access Dcount関数で引数が指定できない

このQ&Aのポイント
  • ACCESSのVBAで社内システムを作っています。Dcount関数の引数1であるフィールド名を指定すると、構文エラーが発生します。
  • フィールド名が数字のみの場合や、フィールド名の先頭が数字以外の場合はDcount関数を使用できますが、フィールド名の先頭が数字(全半角共に)の場合はエラーが発生します。
  • 全社システムからACCESSにインポートするデータのフィールド名が「2A」「3A」などの商品コードになっているため、手段があればこれらのフィールド名を使用したいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.1

現象には一致しておりませんが、以下を一読してみて http://support.microsoft.com/kb/932994/ja DCount に指定するフィールド名部分を [ ] で囲んでみてどうなりますか。 解消できなかったらごめんなさい。 解消できたらできたで、同様な他場所の修正等が必要になると思います。

ryoz019
質問者

お礼

[] を使用してエラー回避できました! >解消できたらできたで、同様な他場所の修正等が必要になると思います。 レコードセットでフィールド名リストを呼び出しているので、修正は一か所で済みました。 cnt = Dcount("[" & rs(2) & "]","フィールド名リスト") 大変参考になりました。 ありがとうございました。

その他の回答 (1)

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.2

回避方法は、30246kiku さんの方法で出来るのではと思いますが access フィールド名 数字 をキーワードにGoogleと一杯!出てきます。 出来るものなら変更したいところです。 上記の検索で出てきたものの中に興味深い回答がありました。 ACCESSのテーブルのフィールド名を「0」から始まる数字にしてしまった場合 http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1117423041 >データのフィールド名が「2A」「3A」などの商品コード どうもExcel的なテーブル構造のような気がします。 だとしたら今後面倒なことになりかねない気もしますので 『テーブルの正規化』も検討された方が宜しいのでは?

ryoz019
質問者

お礼

30246kiku さんの方法で解決できました! 教えていただいたリンクも確認しました。 今後もVBAでプログラミングする上で参考になるページでした。 ご回答ありがとうございました。

関連するQ&A