• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:アクセスVBAについて)

アクセスVBA初心者の質問

このQ&Aのポイント
  • アクセスVBA初心者がテーブルのフィールド内の値を区別する方法について質問しています。
  • フォームのボタンを押すと、記号の有無を表示するようにしたいとのことです。
  • IsNumeric関数を使用したがうまくいかなかったため、アドバイスを求めています。

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

  • ベストアンサー
回答No.2

1e1 などのようなのもIsNumeric関数は指数表示の数値として 評価してしまうので、 msgbox IIF(dcount("[フィールド名]","テーブル名","[フィールド名] like '*[!0-9]*'")>0,"あり","なし") とか? そのテーブル中の特定のフィールド内に 0~9(全角・半角問わず)以外のモノがあるかの判定で良かったんですよね?

hiko0626
質問者

お礼

ご返答ありがとうございます。 そうです。 0~9(全角・半角問わず)以外のモノがあるかの判定がしたかった所です。 教えて頂いた内容を試した所  記号等が含まれている場合は「あり」で表示されましたが 無しのはずの場合にも「あり」で表示されてしまい、 元データを見ると前後に空白?ヌル値?っていうのが入っていたので MsgBox IIf(DCount("trim([KanID])", "KANJA", "trim([KanID]) like '*[!0-9]*'") > 0, "あり", "なし") とtrim関数を追加させて頂いた所できました。 こちらの説明不足でした。 DCount関数にそのような使い方があるのとか知れて勉強になりました。 おそらくまた質問させて頂くとはおもいますがそのときはよろしくお願いします。

その他の回答 (1)

回答No.1

攻め方ですが、 Step1、イミディエイト・ウインドウで ISNumeric()の働きを確認する。 Step2、イミディエイト・ウインドウで テーブル列の参照を確認する。 Step3、1と2とを組み合わてみる。 これで、書けるでしょう。

関連するQ&A