• ベストアンサー

Accessで2つのフィールドを比較し同一かどうか判定する関数はありま

Accessで2つのフィールドを比較し同一かどうか判定する関数はありますか。EXCELで言えばEXACTに当たるものです。関数がない場合その他の方法教えてください。 ACCESS 2007です。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

この質問は何処(どのオブジェクト)で使うか書かないとだめでは。 ーーー エクセル関数のEXACT関数と同名の関数は無い。 Googleで「Access EXACT関数」で照会のこと。 StrComp関数があるが クエリ(選択クエリ)で使うなら、デザインモード状態で、新しいフィールドに (私の場合社員3というテーブルがあって、その中には、氏名、氏名2の両フィールドがある。両者一部少しわざと変えて実験。第3引数はWEBでStrComp関数を照会して、詳細は見てください。) 式1: IIf(StrComp([社員3]![氏名],[社員3]![氏名2],1),"N","E") と式ビルダでつくり、関数式を入れる。 クエリを実行すると、私の場合 氏名フィールド(漢字)と氏名2フィールド(漢字)を各レコードについて比べて 同じ場合は「E」、少し変えたところは「N]が表示された。 ーー もちろんVBA(モジュール)のなかで使うのは、問題ない。 エクセルと違いテーブルの新フィールドでは使えないだろう。

その他の回答 (2)

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

失礼しました。StrConvは文字を変換するときに 使います。StrCompが比較関数です。 StrComp(string1, string2, compare) ヘルプに詳しく載っています。

ticktak
質問者

お礼

これです、これです。あっという間に解決しました。 ありがとうございました。

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.1

過去歴に以下があります。 http://questionbox.jp.msn.com/qa3838122.html また、以下のような例もあります。 http://www.accessclub.jp/bbs3/0007/superbeg3058.html StrComp、あるいは StrConv を使用します。

関連するQ&A

  • Access97での空白フィールドの比較

    Access97で空白フィールド同士を比較させたときに、 「等しい」と判定させたいのですが、 現状「不一致」と判定されてしまいます。 今はクエリーで抽出させているのですが何か方法は無いものでしょうか?

  • エクセルとアクセスのデータ比較(VB6.0)

    エクセルとアクセスのデータ比較ツール(VB6.0) 質問者:SSCSC アクセスからエクセルにコピペされたレコードがあるとします。 そのエクセルのレコードのあるフィールド値を変更します。(このとき、アクセスもエクセルと同様に変更します。) 上記は手作業でします。 そこで、そのエクセルのレコードがアクセスに存在するかどうかをプログラムで作成したいと思っております。 要するにエクセルとアクセスのデータ比較をして、一致していないレコードがエクセルに存在した場合は、ログを出力したいと思っています。 アクセスのデータが比較基準になります。 何か簡単にできる方法はないでしょうか。 今思いついている方法は、 エクセルの1行目はコピペ時にアクセスのフィールド名がコピーされているので、 エクセル、アクセス両方のフィールド値を全て比較対象にしてSQL文で存在するかどうかを確認する方法です。 ご回答よろしくお願い致します。

  • ACCESSでのフィールド比較方法?

    ACCESSで、ある2つのレコードの各フィールドをそれぞれ比較して、フィールドが不一致であるレコードを抽出する機能はありませんか?

  • Accessでフィールドを比較したいのですが

    初心者です。 仕様が同じ2つのテーブルの同名フィールドを比較して、 データが同じ時、チェックボックスをTrueとしたいのですが、 比較したいフィールドが2つあり、 Aテーブルのコード1とBテーブルのコード1 Aテーブルのコード2とBテーブルのコード2 テーブルにはそれぞれ、コード1とコード2のチェックボックスを 設けています。 Select caseかIfを使うことはわかるのですが、関数が思いつきません。 よろしくお願いいたします。

  • Accessで文字列を連結しフィールドを作成するには?

    アクセスのクエリーでテーブルから2つの文字列フィールド引っ張ってきて、その文字列データをくっつけることがやりたいのですが、どのようにやったらよいのでしょうか? ちなみにExcelの場合はCONCATENATE関数で2つのセルを 1つのセルにまとめることが可能です。アクセスで関数を見てみたのですが、そのような関数はありませんでした。 誰かよい方法があれば教えていただけませんか? よろしくお願いします。

  • アクセス関数 3つの値を比較する

    お世話になります。 アクセス初心者です。宜しくお願い致します。 今回は3つのデータを比較し、値の大きさに順位をつけられるユーザー定義関数をつくれないかご相談です。 具体的には、製品テーブルのフィールド縦、横、高さを比較し、最長辺、短辺、最短辺を求めた結果をクエリで出力したいと考えてます。 等符号でちまちまやっていたのですがうまくいかず。。 解決できる関数をご存知の方がいらっしゃったらご教授ください。 宜しくお願い致します。

  • エクセルとアクセスの比較です。

    エクセルとアクセスの比較です。 仮に、関数をセットしてエクセルシート上で結果を出すものと、同様な関数で、アクセス上で結果を出すのと、どちらが早いのでしょうか??アクセスにエクセルと同じ作業をさせるってことですが・・ ただし、データ抽出では無く、関数による計算です、もちろんパソコンも同じとしてです・・

  • Accessでフィールドの結合

    Accessについて質問です。 例えばテーブルに都道府県、市区町村番地、マンション名のフィールドを作ります。 で、それらを入力すると3つとも結合されて同テーブル上にある別のフィールドに表示させたいと思っています。 ExcelではCONCATENATE関数を使えば結合して表示できるのですが、Accessでそのようにするにはどのようにすればよろしいでしょうか? また、市区町村番地とマンション名の間にスペースをつけたいと思っているのですが、スペースを入れる方法などはありますでしょうか?

  • エクセル関数を用いて判定したいのですが・・・

    エクセル関数初心者です。 IF関数を用いて数値を判定したいのですが、 男性と女性で判定基準が異なります。 セルAが"男性"なら、セルBが2以上の場合で"●" セルAが"女性"なら、セルBが4以上の場合で"●"、 それ以外は"▲" このような条件で判定分けできる方法はありますか? さらに、 セルAが"男性の場合、Bが2~4なら"●"、4より大きい場合は"▲"、2未満なら"×" セルAが"女性の場合、Bが3~5なら"●"、5より大きい場合は"▲"、3未満なら"×" 何かやり方があれば、教えてください。 よろしくお願いします。

  • Access  フィールドサイズ

    ExcelからAccessへインポートする際にテキスト型のフィールドサイズは255となりますが、複数のフィールドを一度に同じサイズにする方法はありますでしょうか? 基本的なことかと思いますがよろしくお願いします。

専門家に質問してみよう