Excel表の単語を抽出して色付けする方法を教えてください

このQ&Aのポイント
  • Excel表のシート1とシート2から単語を抽出し、該当する単語だけを色付けする方法を教えてください。
  • エクセルど素人が、シート1とシート2の単語を照合して色付けする方法を教えてください。
  • Excelの使い方について質問です。シート1とシート2の単語を抽出し、色付けする方法を教えてください。
回答を見る
  • ベストアンサー

エクセルど素人から、再度質問です。

エクセルど素人から、再度質問です。 シート1に、  A 1 雨 2 雪 3 あめ 4 飴 5 幸  ・  ・  ・ と、様々な言葉が続いています。 シート2には、    A          B          C   1 明日は       昨日と違って     雨になる   2 今日の       天気は        雪かも・・・ 3 祭り        行ったら       あめ買う   ・   ・   ・ こんなエクセル表 シート1とシート2があって、シート1のすべての単語をシート2の表から検索(抽出?)して、その該当するシート2の単語だけを色付けしたいのです。 こんな技をぜひとも教えてください。ど素人なので、詳しいやり方を教えてください。 どうぞよろしくお願いいたします。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

No.1です! 何度も失礼します。 他に色々方法を考えてみたのですが、なかなか良い案が浮かびません。 結局前回の応用になってしまいますが・・・ 条件付書式は別Sheetを参照出来なかったと思いますので、 ↓の画像のように同じSheetに作業用の表を作成します。 相対参照になりますので、同じSheetのどこでもかまいません、開いているスペースを利用すれば良いと思います。 今回はSheet1の検索文字がありSheet2のセル内に検索文字が含まれていれば、水色になるようにしています。 Sheet2のA9セルに =IF(OR(ISNUMBER(FIND(Sheet1!$A$2:$A$6,A1))),1,"") 前回にも書きましたが、ここで検索文字の範囲に空白が含まれていると全てのセルに「1」が表示されてしまいますので、 Sheet1のA列を範囲指定する場合は空白を含まないようにしてください。 (配列数式ですので 前回同様Shift+Ctrl+Enterキーで確定です。) これを列方向と行方向にオートフィルでずぃ~~~~!っとコピーします。 そして、Sheet2の色づけしたい表全てを範囲指定し、 条件付書式の「数式が」の数式欄に =A9=1 としてパターンの色を水色にしています。 これでSheet1の範囲指定した中の文字が含まれるセルに色がつきます。 これでお判りかと思いますが、条件付書式の数式欄のセル番地は 作業用の表の左一番上のセル番地にしておきます。 以上、今回も長々と書いてしまいましたが、 参考になったでしょうか? この程度しか思い浮かびません。m(__)m

haru0112
質問者

お礼

tom04さん、返事が遅くなり申し訳ありません。 できました!!!! 本当に感動です。素晴らしい!! 本当にありがとうございました。心の底から感謝です。 今後も何かあった時はよろしくお願いします。 ありがとうございました。

その他の回答 (1)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんばんは! 解釈が違っていたらごめんなさい。 ↓の画像のようにSheet1のA列に入力されている単語がSheet2のセルにあれば そのセルが「赤」になるようにしています。 一つ引っかかるのは >・・・その該当するシート2の単語だけを色付けしたいのです。・・・ という部分です。 セル内の単語だけ!というわけにはいきませんが。 Sheet2のセルに一気に条件付書式から塗るつぶし!という方法ではありませんが、 作業用の列をSheet2のデータ列分設けています。 Sheet2のD2セルに =IF(OR(ISNUMBER(FIND(Sheet1!$A$1:$A$5,A2))),1,"") (ここでSheet1のセル範囲指定で空白セルを範囲指定してしまうと、全てに「1」が表示されてしまいます) これは配列数式になってしまいますので、この画面からそのままコピー&ペーストしただけではエラーになると思います。 D2セルに貼り付け後、F2キーを押す、又はD2セルでダブルクリック、又は数式バー内で一度クリックします。 編集可能になりますので Shift+Ctrl+Enterキーで確定します。 数式の前後に{ }マークが入りは配列数式になります。 このD2セルをF2セルまでオートフィルでコピーした後に、そのまま行方向へコピーします。 そして、A列~C列のデータを範囲指定し、条件付書式で塗りつぶしのパターンを選択します。 当方使用のExcel2003の場合ですが、D2~データの最後まで範囲指定 → 書式 → 条件付書式 → 「数式が」を選択し数式欄に =D2=1 として → 書式 → パターンで「赤」を選択してOK (数式には範囲指定した一番左上セル番地を設定します) これで画像のように、Sheet1のA列にある単語が含まれるセルが「赤」になります。 尚、数式欄に入力するセル番地は範囲指定した一番左上のセル番地にします。 もしかして、Sheet1の方に色づけをしたい!という質問でしたら まったく逆の方法になるかもしれません。 以上、長々と書きましたが参考になればよいのですが、 尚、的外れなら読み流してくださいね。m(__)m

haru0112
質問者

お礼

tom04さん、丁寧な解説本当にありがとうございました。 でも、でもです。トライしたのですがうまくいきません。 自分の説明が悪かったと思うのですが、シート2の列はC列で終わるのではなく、さらにあと10列近く続いているのです。こうなると数式変わってきますかね。 もしよろしければ、応用が利くよう数式の解説をお願いできないでしょうか。 また、別方法でVBAでも良いです。 本当にすいません。どうぞよろしくお願いします。

関連するQ&A

  • エクセルの置換のことで・・・

    エクセルの置換機能で質問です。 仮にSheet1のA1のセルに --------------------------------------------------- 今日は良い天気です。 あすはどうでしょうか? --------------------------------------------------- そして、Sheet2のA1に --------------------------------------------------- 昨日は雨でした。 [★★★] たぶん良い天気になるでしょう。 --------------------------------------------------- このようなデータがあるとします。 VBAを使って置換してSheet2のA1を以下のようにしたいです。 --------------------------------------------------- 昨日は雨でした。 今日は良い天気です。 あすはどうでしょうか? たぶん良い天気になるでしょう。 --------------------------------------------------- マクロの記録で試してみたのですが、セル内に改行がはいっていると --------------------------------------------------- 昨日は雨でした。 今日は良い天気です。 たぶん良い天気になるでしょう。 --------------------------------------------------- このように上手くいきません。 VBAを使って上手くできないでしょうか?

  • エクセル関数【月別シートの内容を表示させる】

    エクセルで各月で分かれたシートに、情報が入っていて、そちらをひとつにまとめることは可能でしょうか? 情報が入っている部分は固定とします。 例:入力場所、各シートA1~A10まで。 1シート A1 天気がいい A2 天気がわるい A3 雨だ A4 晴れだ 2シート A1 体調がわるい A2 体調がいい 3シート なし 4シート A1 元気がいい ・・・12シート 合計シート A1 天気がいい A2 天気がわるい A3 雨だ A4 晴れだ A5 体調がわるい A6 体調がいい A7 元気がいい ・・・ といった感じなのですが、やはりVBAでないと実装は難しいでしょうか?  

  • エクセルの計算についての質問です(素人)

    今、エクセルで進捗表を作成しています。 各々の進捗状況をドロップダウンリストで選択できるようにしたのですが、 例えば進捗状況Aは何件、Bは何件…と合計を出す方法はありますでしょうか? また、状況A~Dでセルの色を変えたいのですが、そういったことも 可能でしょうか? ちなみにエクセル2007を使っています。 当方、かなりの素人なので、説明がうまくできませんが、 ご回答いただけると嬉しいです。

  • 再度エクセルの集計

    エクセルの表で、文字、数値が、並びでは無く、行が飛んで入力されています。(表なので飛びと言っています。A1,A3、A6など) この表を、同じシートの下の方に、纏めて表示させたいのです。(B10,11、12とセルの間隔を開けないで) これをする方法を教えて下さい。 この表には連番はありません。必要なら作成します。 前回、この質問をして、関数を頂いた者です。 ◆関数による方法です B10=IF(ROW(A1)>COUNTA($A$1:$A$9),"",INDEX($A$1:$A$9,SMALL(INDEX(SUBSTITUTE(N($A$1:$A$9<>""),0,10^5)*ROW($A$1:$A$9),),ROW(A1)))) ★下にコピー この答えを頂きました。練習で実行したら、出来たのですが、いざ、本シートで作業したら、上手く行きません。抽出したい表の数値がA10など列の途中セルからの時は、条件が変わって来るのでしょうか? 抽出するのは、数字、アルファベットです。 ※表で同じ条件で(A1)で行ったら出来ましたが、表なので、表の名前や項目になってしまうので、困っています。

  • エクセルについて質問

    エクセルで計算式が入った表を作りたいんですが、例えば Aというシートの中の、あるセル(1)とあるセル(2)を足した合計を別のBというシートのあるセル(3)に反映する方法が知りたいんですが、教えていただけないでしょうか?

  • エクセルの質問です。

    エクセルの質問です。 シート1のA列に1から1000まで整理番号をつけた1000個のデータがB列に入っています。これをシート2で、ランダムに重複なく10こ選んで表示させる方法はありませんか。マクロは禁止されていますから関数のみで教えてくたさい。エクセル2010を使っています。学習塾で単語テストなどを作る予定です。よろしくねがいます。

  • エクセルのデータ整理をマクロを用いて行おうと思っているのですが、素人で

    エクセルのデータ整理をマクロを用いて行おうと思っているのですが、素人でなかなか前に進みません。 sheet1にあるデータの合計をsheet2の任意のセルに書き込ませたいと考えています。 Sheet1のA1~A4の合計をSheet2のA1に、Sheet1のA5~A8の合計をSheet2のA2に、、、という具合に合計するデータのセル範囲が移動していくような処理をしたいと考えています。 参考になるページやポイントなどがあれば教えていただけますでしょうか。 よろしくお願いします。 Sheet1    Sheet2   A B...    A 1  2      合計(1) 2  2      合計(2) 3  2      ・ 4  2      ・ 5  4      ・ 6  4 7  4 8  4 ・ ・ ・ ・ ・ ・

  • ド素人ですが、エクセルで・・ ??

     こんにちは。エクセルについては、全くのド素人と同様なのですが・・、しかも、最近エクセルから遠ざかっていたもので、詳しい名称等も、うすら覚えなもので、うまく質問が伝わるといいのですが、お願い致します。  エクセルの一つのシートにて、表で計算させ、その結果の中の最大数値によって、その最大数値を表示させるだけではなく、その最大数値を出した該当者(「人」の方)を同時に表示させる方法を教えて下さい・・・。  例えば、「月売上結果表」等で、A1.A2.A3.・・「行」 に「人」の名前を設定、それぞれB*.C*.D*・・{*(各人の行)} に各人その日の売上数値を入力し、最終的な月の結果数値を、仮に「Y*」で計算させる事を設定したとします。これで、各人の月の売上額はY*に出ますよね? その後、その「Y*」の数値の中で、一番大きい数値を「Z8」に表示させたとして、その数値を出した「人」の方を同時に「Z9」に表示させる方法を教えて下さい。(それぞれの月売上額は「全て違う」という事を前提で・・。)  解ります・・・?  要は、最大数値を表示させるだけでは無く(最大数値を表示させる方法は解るのですが)、その最大数値を出した「人(A*)」の方も同時にその結果に応じて表示させる関数?を教えて下さい。  最大数値と、その数値を出した人の名前が“一発”で表示されれば、この売上表も、もっといい物になると思いまして・・・。     わかりづらい文面、ド素人で、すみませんが、宜しくお願い致します。

  • エクセルのif関数について教えてください

    エクセルのif関数について教えてください 添付のAの表があります。 これをBのような表にして、あめは毎月いくらだったのか、 それぞれの金額の推移を知りたいです。 どのような関数を入れればいいのか教えてください。

  • エクセルについてなのですが・・・

    自分は今、高校生です。エクセルを使って英単語の問題用紙を作りたいと思っています。そこで聞きたいのですが、例えば「シート2」のA-1~C-4にそれぞれ違う英単語をかいて、その英単語のどれかをランダムで「シート1」のA-1に記載させる方法ってありませんか?