dポイントプレゼントキャンペーン実施中!

 よろしくお願いいたします。
 ExcelあるいはAccessにおいて,ローマ数字の大文字と小文字を区別したいと考えていますがうまくいきません。

 例えば,エクセルにおいて A1セルに「ⅰ」が入力してあって 

 =IF(A1="I","壱",IF(A1="ⅰ","一"))

という式をA2セルに入れると,「壱」という戻り値になります。アクセスでも構文が違うだけの同意の関数を使用しても同様の結果になります。つまり,大文字と小文字を区別していないということになると思います。原因と回避する方法を教えていただけたら幸いです。

A 回答 (4件)

こんにちは。



Access のクエリでは以下のようになるかと思います。

IIf(StrComp([field1],"I",0)=0,"壱",IIf(StrComp([field1],"i",0)=0,"一"))

他には、文字コードで行ったり、StrConv などで比較する方法もあると思います。
    • good
    • 0

全角と半角が混在していたり、見た目が似ているものなのでは?


ご自分でデータを入力していないため、
実際は思惑と異なるものが入っていませんか?
因みに、MSゴシックで、「I(ローマ数字の1)」と「I(全角の大文字のアイ)」は見た目では区別しにくいです。
    • good
    • 0
この回答へのお礼

 すべての方に対してまとめてお礼をする形になってしまい失礼いたします。

 問題解決です。本当にありがとうございました。エクセルのExact アクセスのStrCompを利用するのですね。

 大変勉強になりました。

お礼日時:2008/03/08 00:07

ANo.1


抜けてたか。
=IF(EXACT(A1,"I"),"壱",IF(EXACT(A1,"i"),"一"))
か。
    • good
    • 0

exact関数を使う。


=IF(EXACT(A1,"I"),"壱",IF(EXACT(A1,""),"一"))
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!