• ベストアンサー

excelで次のようなことをチェックできますか?

excelで次のようなことをチェックできますか? もし、合致していれば(真であれば)決められた得点を表示する というようなことです。 1.A3セルに入力した文字列が中央ぞろえされている。 2.A4に入力したデータは、’0120といように数字が文字列化されている。 3.B4セルには「セルポインタ」という文字列が入力されている。 3.A5セルに入力されている数式が=sum(b5:b11)である。値ではチェックしない。 4.A6セルに表示されている値が1234である(数式で表示)。 5.A7セルにrankで表示した値が 北海道 である。

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

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

ん? 他は軒並み役立たずでしたか。誤記もありましたし,大変失礼しました。 既に他の方からご指摘頂いていますが 訂正版: =IF(CELL("prefix",A3)="^",得点,0) については,既に説明済みの通りセルの中身が「文字列」の場合のみに機能します。 数値が記入されているのではダメなので注意して下さい。文字と数字は判りますね? どーしてもA3セルに数字を記入しなきゃならない場合は,A3セルに事前にセルの書式設定の表示形式で「文字列」の設定を付けておいた上で数字を記入することで,回答の関数で調査する事ができます。 それも出来ないようなら,関数では出来ません。前回回答の4同様にマクロを併用します。

sato8845
質問者

補足

回答ありがとうございます。大変参考になっております。 さて、 >既に説明済みの通りセルの中身が「文字列」の場合のみに機能します。 これは了解しております。困っているのは、A3に文字列があって 式を別のセルに入力またはコピーすると、正常に機能します。 しかし、文字列の書式を変更しても関数の表示が変化しません(得点が0にならない)。 一定です。別のセルに同じ関数を入力またはコピーすると、既定どおりに変化します。

その他の回答 (3)

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

>文字列の書式を変更しても関数の表示が変化しません セルの書式を変更した直後(書式を変更しただけ)では,関数の値は変わりません。 エクセルの仕様上の制約なので,その時点で回避する方法はありません。マクロ等を使っても,原則不可能です。 F9を押す,他のセルを何か編集するなどで,関数が再計算されると新しい得点が現れます。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.2

 ANo.1様の御回答に補足させて頂きます。 >1については、A3セルに「文字列」が記入されているのであれば >=IF(CELLS("prefix",A3)="^",得点,0) の中にある「CELLS」という箇所は、おそらく回答欄に入力される際の打ち間違いで、正しくは =IF(CELL("prefix",A3)="^",得点,"") になります。 >2.A4に入力したデータは、’0120といように数字が文字列化されている。 に関しては、 =IF(AND(ISNUMBER(A4+0),ISTEXT(A4)),得点,"") になります。 >3.B4セルには「セルポインタ」という文字列が入力されている。 という御質問の意味が文面の通りのものであれば、ANo.1様の御回答の通りですが、もし、 「B4セルに入力されている文章の何処かに、『セルポインタ』という文字列が含まれている」 という意味である場合には、 =IF(ISNUMBER(FIND("セルポインタ",B4)),得点,"") になります。

sato8845
質問者

補足

回答ありがとうございます。 ただ、以下の関数を試してみましたが 中央ぞろえで10点が表示されません。 ^が中央ぞろえということでしょうか? =IF(CELL("prefix",A3)="^",10,"")

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

1については、A3セルに「文字列」が記入されているのであれば =IF(CELLS("prefix",A3)="^",得点,0) 2については、「文字列が記入されていればよい」のであれば =IF(ISTEXT(A4),得点,0) 3については =IF(B4="セルポインタ",得点,0) 4については関数ではできないので、マクロ等を併用しなければできません。 今日夕方のご相談でしたが http://okwave.jp/qa/q7740013.html を参考にしてください 5については =IF(A6=1234,得点,0) 6については「rankで表示した」では意味不明ですが、北海道と計算値が出ているかどうかなら =IF(A7="北海道",得点,0)

sato8845
質問者

お礼

以下の関数が目的にぴったりでした。 =IF(B4="セルポインタ",得点,0) ありがとうございます。

関連するQ&A

  • エクセルで

    エクセルについてお伺いします。例えばセルA1に10%、A2に20%のパーセンテージで入力された値は合計は出せないのでしょうか。SUM関数で出すとエラーが出てしまいます。それと、数式を入力したセルの数値の値の合計も出ないのでしょうか。例えばあるセルに=A1+B1,もう一方のセルにA2+B2と入力されていてそれぞれ数値が5と4とします。合計9を出したいのですが、数式のためSUM関数では合計できません。何か方法はありますか。

  • エクセル セル内の合計値に応じてセルの色を変えたい

         A      B        1    2    りんご2 2    4    りんご1,メロン3 3    3    メロン1,みかん1 上記のように,A列セルには数字が入っていて,B列セルには文字列と数字が入っています。 A1セルの値と,B1の文字列に含まれている数字は合致しているので,セルの色はそのままです。A2セルの値とB2の文字列に含まれている数字の合計が合致しているので,ここもセルの色はそのままです。しかし,A3セルとB3の文字列に含まれている数字の合計は合致していないので,B3セルに色を付けたいのです。 B列のセルは,1つのセル内に文字列と数字を入力することを前提に考えていますが,こうしたことは可能でしょうか?可能であれば教えていただけたら幸いです。

  • セルに数式が入ってるかどうかを取得する関数は?

    C1には、=SUM(A1:B1) C2には、0 が入力されています。 実際、A1:B1の値は0なので、 C1もC2も0が表示されています。 D列で、ちゃんとC列にsum関数が入ってるか調べてたいのですが =COUNTIF(C1,"*sum*") をオートフィルしても、0が返ります。 C3に「sum」と言う文字列を入れて、=COUNTIF(C3,"*sum*")をしたら 1が返りました。 COUNTIF関数は文字列は認識しますが数式は認識しないようです。 このような場合、セルに数式が入ってるかを取得する方法はありますか?

  • Excel97で、If文をなんとかしたい

    IF文でなんとかなりそうなんですが、IF文を使った事がなくて。 A列   B列   C列    任意の位置のセルD 数式  文字列   数式  文字列 数式  文字列 数式  文字列 こんな表で、Bの文字列の値と、Dのセルの値が一致した時、Aの数式の値(数字)をCの列に表示させ、BとDの文字が一致しない時は、”エラー”を表示させたいんですが、どういう風にすればいいのでしょうか? IF文を使えばいいのでしょうか? どういう風に、数式を立てればいいのかわかりません。 どなたか詳しい方、教えていただけませんか?

  • エクセルで数式が文字列になってしまう

     こんにちは。教えて下さい。  あるセルに対して、例えば「=sum(a1:c1)」のような式を入力すると、結果が表示されずに「=sum(a1:c1)」がそのまま表示されます。  セルの属性に関係あるのかと思って、他の数式の入っているセルをそのままコピー(このときは数式になっている)、数式を書き換えたのですが、書き換えたとたん文字列になってしまいます。セルの書式で「標準」を指定しても変わりません。  どうすればいいのでしょう。  よろしくお願いいたします。

  • エクセルの置換について

    セルに次のような数式が入っているときに数式の部分だけ置換する方法がありましたらご指導お願いします。 [B1] =SUM(A1+A2) →置換後 =A1+A2 [B2] =SUM(A10+A20) →置換後 =A10+A20 [B3] =SUM(A100+A200) →置換後 =A100+A200 置換する方法は「編集」-「置換」で 検索する文字列と置換後の文字列が分かりません。 SUM(で置換をかけると数式エラーで置換が出来ず SUM(*)で置換をかけると当然ですが全て消えます。 お手数ですが宜しくお願致します。

  • 配列数式を用いたエクセルマクロの使い方

    セルA1に「=SUM((A1:A12=5)*(B1:B12=""A"")*C1:C12)」という風に数式を表示形式を文字列として入れておき、他のセルに、この計算結果を入れるたいのですが、マクロでどのようにすればいいか、ご存知のかたがいらっしゃいましたら教えてください。 ちなみに、使用したい数式(セルA1に入れているもの)は配列数式です。

  • EXCEL 数式が入った空白セルを数える

    毎度お世話になっています。 質問の内容ですが、例えば下記のようなシートがあるとします。 セルB1、セルC1、セルD1:手入力セル セルA1:数式「=IF(B1="","",B1+C1)」 セルA2:文字列 セルA3:数式「=IF(D1="","",D1*0.1)」 セルA4:文字列 セルA5:A1+A3の計算結果を表示 (※なお、セルA2、A4は数値が入らない) というような場合において、 ●セルB1、C1、D1になにも入力されていない場合、セルA5が空白となる。 ●セルB1、C1にのみ数値が入力されている場合、セルA5の計算結果がセルA1の値のみ。 ●セルD1にのみ数値が入力されている場合も上記と同様に計算結果が表示される。 以上の条件を満たす数式をセルA5に入力したいのですが、 COUNTBLANKは数式が入っている場合には使えず、COUNTAの場合だとセルA1、A3のどちらにも数値が入った場合に表示される、といった数式になります。 IFをいくつも使えば可能とは思いますが、もう少し単純に数式を作れたらと思い質問をさせて頂きました。 よろしければ御回答宜しくお願い致します。 (内容を訂正したため、いったん質問を削除しました。もし御回答中の方が居ましたら申し訳ありませんでした。)

  • エクセルのバグですか

    エクセルで数式を使っていて、一つのセルだけ異常な数値が出ます。 下記のような結果が出ますが、こういう現象はあるのでしょうか? 例) セル(内容) : 値(画面表示) A1(=SUM(B2:B79) :11.4000000000000000000000000000 A2(手入力 11.4) :11.4000000000000000000000000000 A3(=A1-A2) : △ 0.0000000000000142108547152020 ※ちなみに(B2:B79)も小数点以下は第一位までしか入力してません。

  • エクセル 数式

    Excelについて。 あるセルA1の設定されている数式(=SUM(E:E)など)を、 B1にコピーする方法は、ありますでしょうか? ※A1に入力されている数式をコピー貼り付けではない方法を探しています。 B1に、=A1とすると、=SUM(E:E)の計算結果が入力されてしまいます。 ゴール(表示される値)は同じですが。コピー貼り付けしか方法はないでしょうか。 お手数ですが、よろしくお願いします。 エクセル2007以上 VBAなら可能ですか?

専門家に質問してみよう