• ベストアンサー

excel2003でifの活用法について

excel2003でウインドウズXPを使っています 下記のような命令を出したいです 「もし、A1の数字が3桁ならば、B1に"三桁"と表示せよ」 桁数を読み取る関数が解れば、可能かと思ったのですが、ご存知の方お教え願います

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

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.4

>A1の数字が3桁ならば ここが少し曖昧ですが、文字数を調べるLEN関数で考えてみます 値が「123」のように正の整数(自然数)しかないなら =IF(LEN(A1)=3,"三桁","") 「-123」のような負の整数もあるなら =IF(LEN(SUBSTITUTE(A2,"-",""))=3,"三桁","") 「12.3」のよう正数の有効桁数が3桁であることを判定するなら =IF(LEN(SUBSTITUTE(A2,".",""))=3,"三桁","") 「-12.3」のように負も取りうる数値の有効桁数が3桁であることを判定するなら =IF(LEN(SUBSTITUTE(SUBSTITUTE(A2,".",""),"-",""))=3,"三桁","")

その他の回答 (3)

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.3

整数部でいいなら =NUMBERSTRING(INT(LOG(ABS(A1))+1),1)&"桁" または =TEXT(INT(LOG(ABS(A1))+1),"[Dbnum1]0桁")

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

一例です。 =IF(LEN(A1)=3,"三桁","")

回答No.1

=IF(INT(LOG(A1,10))=2,"三桁","そのた") 如何でしょうか

関連するQ&A

  • Excel2002でIF関数を使った重複調べができない

    Excel2002でIF関数を使って重複データを調べています。 例えば   A  B 1 389 2 359 3 359 のとき、 B1に0を入れ、B2にIF関数で「IF=(A1=A2,1,0)」としていますが、あきらかにA2とA3は同じであるのにB3には「0」と出ます。 これは関数が反映されていないということだと思うのですが、なぜでしょうか。 数字はテキスト形式で入力してあります。 よろしくお願いいたします。

  • エクセル(Excel)で、数値を一定の有効数字で表示したいのですが…

    エクセル(Excel)の書式設定の表示形式では数値を選択すると、小数点以下の桁数を揃えることができますが、同じ感覚で有効数字を一定にして表示させるにはどんな方法があるでしょうか? 例えば、0.01234、0.1234、1.1234、11.1234、111.1234という五つの値を、有効数字3桁を指定して表示して、順に0.0123、0.123、1.12、11.1、111という風に自動的に表示してくれる表示形式、あるいは関数を探しています。 事務計算で小数点以下何桁というのが重要であるように、技術計算ではこのように有効数字を揃えたい場合が多いと思いますので、どなたかご存じの方、お教えください。 なお、指数形式では似たような結果になりますが、わかりにくい表示なので使いたくありません。 よろしくお願いいたします。

  • excel関数についての質問です。

    A列に1000未満の様々な数字がはいっており、 現在関数を使って2段階で下記のように加工しているのですが それを1つにまとめたいと思い試行錯誤しておりますが、うまくいきません。 【例】281.25→282 、 28.125→28.2 、 2.8125→2.82  、 0.28125→0.29    15→15.0  、 1.5→1.50  、      ※3桁表示にしたい(○○○、○○.○、○.○○)     ※上記いずれも四捨五入でなく繰上げたい。    現在のところ B列には【繰上げの関数】 =IF(LEN(TRUNC(A1))>2,ROUNDUP(A1,0),IF(LEN(TRUNC(A1))>1,ROUNDUP(A1,1),ROUNDUP(A1,2))) C列には【桁数をそろえる為の関数(たとえば0.5を0.50とするため)】 =IF(LEN(TRUNC(B1))>2,TEXT(B1,"#0"),IF(LEN(TRUNC(B1))>1,TEXT(B1,"0.0"),TEXT(B1,"0.00"))) B列とC列の関数を合体して1つにまとめたいのですが、うまくいきません。 どなたかご教授いただけないでしょうか? ちなみにそれぞれの関数は私が作ったものではありませんが、 それぞれの関数自体は何とか理解できます。よろしくお願いします。

  • excel2003プロフェッショナルを使っています

    excel2003プロフェッショナルを使っています 関数で質問です A1のセルの数字が1~10までなら B1セルに5%と表示し、11~20なら 6%と表示し・・・・ という風に、条件の数字に幅を持たせて表示させるやり方があれば教えてください Vlookupだと数字が完璧にあってないと表示されません また、条件が10個ほどあるのでifでいちいちやるにはちょっと大変です ご存知の方がおりましたらお願いいたします

  • 【Excel】特定の文字間の数字を取り出す

    Excel2003を使用しています。 あるセルに「●●●A9B××…」と入力してあった場合、AとBの間にある数字“9”を取り出すにはどうしたらいいでしょうか? 全体の文字数は変化しますが、AとBという文字は必ずあって、その間にある数字だけを取り出して、それを別の計算で使用したいのです。数字は1桁か2桁のいずれかですが、関数の組み合わせ等で可能でしょうか? よろしくお願いします。

  • IF関数について

    教えてください 6 10 7 8をそれぞれ掛けて  6*10 6*7 6*8 で60 42 48になります この数字 60 42 48の1桁の数字 0, 2, 8, を関数で表示できますでしょうか 10代の数字なら IF(A1>10,A1-10,A1)でやったことがあります どんな数式になるんでしょうか 宜しくお願いします

  • 複数桁の数字を1セルずつ表示したい

    エクセル2010を使っています。 1つのセルに入っている複数桁の数字を、1セルずつ分けて表示させたいと思っています。 しかも、数字を置き換えて桁数が減った場合には、右に詰めたいです。 (例) AIに12345 と入力したら、B1に1、B2に2、B3に3、B4に4、B5に5と表示させたい。 A1の数字を123に置き換えたら、B1、B2は空欄、B3に1、B4に2、B5に3と置き換わるようにしたい。 ただ単に数字を1セルずつ分けるだけでしたら、mid関数を使ってできるのですが、 桁数の異なる数字に置き換えると右に詰めるようにするにはどうしたらよいでしょうか。 更に、数字の左側に円マークも表示させたいです。 よろしくお願いします。

  • Excel2000での初歩的な質問です。

    Excel2000での初歩的な質問です。 四捨五入というのはRound関数を使うわけですね? 例えば、28473という数値を四捨五入して28470にしたい場合ですが、 ROUND関数の入力画面には、数値と桁数があります。 数値は28473があるセルをクリックして入力するのはいいとして、 桁数というのが解りません。説明の意味も解りません。この場合、何と言う数字を入れたらいいのでしょうか? 次に、28473.49という数値を四捨五入して28473.5と表示させたい場合、 ROUND関数の入力画面で、桁数は何という数字を入力したらいいのでしょうか? 宜しくお願い致します。

  • Excel数字分解

    B1の数字を分解して右揃えでA:Gにいれたい。 B1に31,500があります。B1の数字は最高8桁になります。 しかしながら、A:Gまでにしか分解しませんので B1:12,000,333なら下記の様にA3に12をいれたい。     A  B  C  D  E  F  G   2        3   1   5   0  0    B1が12,000,333なら 3 12  0  0   0  3  3  3 MID関数でいろいろ試しましたがうまくいきません。 何かよい方法はありませんか?

  • Excel関数

    Excel2010を使用しています。 A~E列 及び H~K列の1,000行目くらいまで、1ケタから5ケタの数字を入力しています。 重複した数字がないか確認したいのですが、適した関数はありますか? (重複していた場合、指定したセルに「重複」と出るような関数など) セルは空欄の場合もあります。 ご教示いただければ幸いです。よろしくお願いします。

専門家に質問してみよう