• ベストアンサー

エクセル、条件つき書式の数式について

いろいろ自分でやってみたのですが、どうしてもできないので よろしくお願いします。 参考書を数冊読んだ程度のエクセル初心者です。 条件つき書式の数式に「OR」は使えますか? 列にA1からA2に順に「1~50」のように連続した数字を入れ、 うち「3と7と13」などというように、規則性のない数字の 入っているセルのみを塗りつぶすなどして、書式を変えたいのです。 なので、A1から下のセルを範囲で指定して、 書式 → 条件つき書式 の 条件(1) の数式に 「=OR(3,7,13)」 と入力してみたのですが、 結果は思ったとおりにはなりませんでした。 (書式はどのセルも変わらず) 何か間違っているでしょうか? それとあと一つなのですが。 上の条件をもう一度確認しようと、数式を見てみると (書式→条件つき書式とすすんで) 「="OR(3,7,13)"」 のように「”」で囲まれていました。 ためしにその「”」を削除して「OK」にすると、 今度は範囲指定した全部のセルが塗りつぶされてしまいました。 初歩的なことなのでしょうが、この「”」は いったいどんな意味があるのですか? 以上よろしくお願いいたします。 補足が必要ならばいたします。 遅くなるかもしれませんが、必ずお礼は書かせていただきます。

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

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

使えます。ORは土日に色をつける場合などに、私も多数回答してます。 既に回答が出てますが、説明を違った説明をします。 A列A2から1から50までの(周忌年)数字があるとします。 A2:A51ですが、 A2:A51を範囲指定します。 普通そのままだと、A2の1がアクチブセルになっているはずです。 なっていなければ、CTRLキーを押しつつクリックして、A2せるをアクチブ(白色)にします。これが大切。 書式ー条件付書式ー「数式が」を選んで、ボックスの中に式を書くのですが、 アクチブセルのA2だけを頭において、式を組み立てます。 ですから 「="OR(3,7,13)"」では無く =OR(A2=3,A2=7,A2=13) のように書きます。 関数なら =IF(OR(A2=3,A2=7,A2=13),<色付け>,<何もしない>) 何ですが、IF( は書きません。 条件付書式は色付け等専用のことを考えているので<色付け>,<何もしない>は必要ないのです。 またMSはVBなども同じですが、ORの場合 A2=3,A2=7,A2=13とA2=を繰り返さないといけません。 A2=3,7,13と書かせてくれません。SQLなどの、IN(3,7,13)がそれに当たりますが、エクセル関数にはありません。 ーーーー さてエクセルは、式の複写と同じで、A2の部分はA3セルを対象に考えているときは、=OR(A3=3,A3=7,A3=13)と変化させてチェックします。それを51行目まで行います。それぞれの行でTRUEであれば色づけしてくれます。 この理屈が判りますか。

azu_san
質問者

お礼

回答ありがとうございます。 遅くなって申し訳ありません。 回答文をじっくり何度も読ませていただきました。 で、私でも問題なくできました! >A2せるをアクチブ(白色)にします。これが大切。 書式ー条件付書式ー「数式が」を選んで、ボックスの中に式を書くのですが、アクチブセルのA2だけを頭において、式を組み立てます。 この説明がとてもわかりやすかったです。 コピー、貼り付けもしないですむ、このimogasiさんの方法が 一番簡単にできるようですね。 今まで、自己流であれこれやってきましたが、これからも、 エクセルを使うときはこれを念頭において、 がんばってみようと思います。 こういう言い方は語弊があるかもしれませんが、 最近エクセルの「面白さ」にハマってしまっています。 お仕事で使っている方などには申し訳ないですが。 皆さんありがとうございました。

その他の回答 (3)

noname#252806
noname#252806
回答No.3

A9の行なら 「=(OR(A9=3,A9=5,A9=7))」です。 あとの行はコピーして数式貼り付けでOKです。 「A9=3,5,7」という記述は使えません。

azu_san
質問者

お礼

回答ありがとうございます。 遅くなって申し訳ありません。 「条件つき書式」に初めて挑戦したので、初歩的なところで つまづいてしまいました。 おっしゃるとおりにやってみたら、きちんとできました。 ありがとうございました。

回答No.2

> この「”」はいったいどんな意味があるのですか? =OR(3,7,13) が数式として認識できないので、自動的に文字列として 処理されてしまったのでしょう。 =OR(A1=3,A1=7,A1=13) としてみてください。

azu_san
質問者

お礼

回答ありがとうございます。 遅くなって申し訳ありません。 >=OR(3,7,13) が数式として認識できないので、自動的に文字列として処理されてしまったのでしょう。 なるほど、と思いました。 確かにOR関数は「OR(論理式1,論理式2・・・)なわけですから、 (3,7,13)ではいけませんよね。 おっしゃるとおりにやってみたら、きちんとできました。 ありがとうございました。

  • ASIMOV
  • ベストアンサー率41% (982/2351)
回答No.1

>条件つき書式の数式に「OR」は使えますか? 使えますよ >ためしにその「”」を削除して「OK」にすると、 >今度は範囲指定した全部のセルが塗りつぶされてしまいました。 ほら、使えているということですよね まず >「=OR(3,7,13)」 数式の使い方(考え方)が間違っています =OR(条件式1,条件式2,条件式3,) としなければなりません 条件式というのは、結果が「TRUE」か「FALSE」になる式です 例えば「A1=3」とか「A2=5」とかです この場合、A1=3というのはA1に3を入れるのではなく、A1が3ならTRUE、3で無いならFALSEとなります (条件式では、0(ゼロ)以外は全て「TRUE」です、したがって「=OR(3,7,13)」は、OR([TRUE],[TRUE],[TRUE])と同じ事になります) また、これ >列にA1からA2に順に「1~50」のように連続した数字を入れ、 >うち「3と7と13」などというように、規則性のない数字の と、これ >「=OR(3,7,13)」 の関係も、意味が解かりません 具体的な例を示してください

azu_san
質問者

お礼

さっそくの回答ありがとうございます。 具体的になにをしたかったかというと。 親族の覚書、というか、年忌法要の一覧表を作りたいのです。 ですので。 A列には「平成20年~50年」のように年を。 B列1に「○○△△子」と名前を。 以下C列1にも「●●▲▲男」と名前と。 で列の2から順に「1,3,4,5,6・・・」と。 (年忌には「2」はないですので) これで、ある親族が亡くなってから「今年で何年目」が わかります。 そういった表を作っておいて、で、一般的に年忌法要を 行う「3,7,11」年目のセルだけ目立たせたいのです。 この説明でわかりますでしょうか?

関連するQ&A