• 締切済み

EXCEL2003の入力規則で1バイト以下の制限をかけたいです。

EXCEL2003の入力規則で1バイト以下の制限をかけたいです。 入力値は16進数です。 EXCEL2007では、入力規則のユーザー設定にて 「=HEX2DEC(A1)<256」 の数式で実現できたのですが、 EXCEL2003では上記数式を入力するとエラーが出力されてしまいます。

みんなの回答

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

ん? 納得いかないと言われて引っ張られても,2003以前のエクセルでHEX2DECを呼べないモノは呼べません。 どうあってもとおっしゃるなら,入力規則の数式の中でベタに文字列評価をなさってください。 例えば  2文字以内で  1文字目が0123456789ABCDEFのどれかに該当で  2文字目も0123456789ABCDEFのどれかに該当である のANDの式にすれば出来ます。 =(LEN(A1)<3)*ISNUMBER(SEARCH(LEFT(A1),"0123456789ABCDEF"))*ISNUMBER(SEARCH(RIGHT(A1),"0123456789ABCDEF")) とか。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

1クッション置いてみる方法です。 A1セルを選択する(必須) 挿入メニューの名前の定義を開始し  名前 h2d  参照範囲 =HEX2DEC(!A1)+NOW()*0 と作成する 任意のセルで入力規則を開始する  種類を ユーザー設定  数式を =h2d<256  として,さらに「空白を無視する」のチェックを外してOKする。 #なぜこれで良いのかはちょっと説明が付きませんが,まぁそういうものとして使ってください。。。

h-yamamoto
質問者

お礼

ありがとうございます。 1クッション置くとできるようですね。 直接できないのがちょっと納得いかないですが。。。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

EXCEL2003で「ツール」「アドイン」で「分析ツール」にチェックは入ってますか? HEX2DECはEXCEL2003では分析ツールのアドイン関数のため、上記にチェックがないとエラー表示になります。 http://office.microsoft.com/ja-jp/excel/HP052091111041.aspx

h-yamamoto
質問者

補足

「分析ツール」はチェック済みで 通常のセルではHEX2DECの関数を使用できます。

関連するQ&A