条件付きハイライトについて

ある特定のセルに特定の文字列が入力されている場合、自分のセルの色を変化させる方法はありますか?

条件付きハイライトを見る限りでは指定のセルと自分のセルを比較することしか出来ません……


例:以下の画像でポップアップのセル(プロフィール::B2)で医師を選んだ場合に下部の表の特定のセル(例えば医学(技能値:B4))の塗りつぶし色を変更する方法

ユーザがアップロードしたファイル

わかる方いれば情報提供お願い致します

MacBook Pro (Retina, 13-inch, Mid 2014), macOS Sierra 10.12.3, Numbers ver4.0.5 (4052)

投稿日 2017/01/31 12:14

返信
スレッドに付いたマーク ランキングトップの返信

投稿日 2017/02/01 17:20

失礼致します。

例:以下の画像でポップアップのセル(プロフィール::B2)で医師を選んだ場合に下部の表の特定のセル(例えば医学(技能値:B4))の塗りつぶし色を変更する方法

変更と言う事は、ポップアップメニューで「医師」が選択されていない場合でも、別の色で塗りつぶされていると言う事でしょうか?


表「技能値」の「技能」の各項目に適用後に個別に編集してやる必要が有りますが、IF 関数を使えば比較的簡単に変更出来ると思います。


表「技能値」の「医学(B4)」セルをクリックして選択し、「shift」+「-」キーで「等号(=)」を入力して「数式エディタ」を表示させ、

IF('プロフィール'::$B$2="医師","医学","医学 ") をコピー&ペーストして「return」キーを押すか、「数式エディタ」右端の「緑のチェックマーク」ボタンをクリックして下さい。

ユーザがアップロードしたファイル

● 表「プロフィール」の「B2」セルのポップアップメニューで「医師」が選択された場合は、表「技能値」の「B4」セルに「医学」が返されます。

● 表「プロフィール」の「B2」セルのポップアップメニューで「医師」以外が選択された場合は、表「技能値」の「B4」セルに「医学 」(※ 医学の後に半角スペースが入っています)が返されます。


次に「条件付きハイライト」の「ハイライトルール」で、IF 関数で設定したのと同様に、「ルール1」で表「プロフィール」の「B2」セルのポップアップメニューで「医師」が選択された場合に返される「医学」を「テキストが次と一致」で設定し、「ルール2」で表「プロフィール」の「B2」セルのポップアップメニューで「医師」以外が選択された場合に返される「医学 」(※ 医学の後に半角スペース)を「テキストが次と一致」で設定します。


これで、「プロフィール」の「B2」セルのポップアップメニューで「医師」が選択された場合には「グリーン塗りつぶし」になり、「医師」以外が選択された場合には「レッド塗りつぶし」になります。

(塗りつぶしのカラーは、お好きな色を設定して下さい)


※ 「医師」以外が選択された場合には塗りつぶしは必要無いと言う場合は、「ルール2」は必要有りません。

ユーザがアップロードしたファイル

ユーザがアップロードしたファイル

IF 関数と条件付きハイライトが問題なく機能する事を確認後、表「技能値」の「医学(B4)」セルをクリックして選択し、マウスポインタを近付けると表示される黄色の自動入力ハンドルを、数式を適用したいセルまでドラッグします。


只、一気にドラッグすると IF 関数と条件付きハイライトで上書きされ、前のテキストが何だったのか分からなくなりますので、1つずつ行うのが賢明かと思います。


ドラッグして IF 関数と条件付きハイライトを適用後、セルをダブルクリックすると「数式エディタ」が表示されますので、IF 関数の3箇所有る " " 内の文字列と「条件付きハイライト」の「ハイライトルール」を、各々編集して下さい。

返信: 5
スレッドに付いたマーク ランキングトップの返信

2017/02/01 17:20 LatticE. への返信

失礼致します。

例:以下の画像でポップアップのセル(プロフィール::B2)で医師を選んだ場合に下部の表の特定のセル(例えば医学(技能値:B4))の塗りつぶし色を変更する方法

変更と言う事は、ポップアップメニューで「医師」が選択されていない場合でも、別の色で塗りつぶされていると言う事でしょうか?


表「技能値」の「技能」の各項目に適用後に個別に編集してやる必要が有りますが、IF 関数を使えば比較的簡単に変更出来ると思います。


表「技能値」の「医学(B4)」セルをクリックして選択し、「shift」+「-」キーで「等号(=)」を入力して「数式エディタ」を表示させ、

IF('プロフィール'::$B$2="医師","医学","医学 ") をコピー&ペーストして「return」キーを押すか、「数式エディタ」右端の「緑のチェックマーク」ボタンをクリックして下さい。

ユーザがアップロードしたファイル

● 表「プロフィール」の「B2」セルのポップアップメニューで「医師」が選択された場合は、表「技能値」の「B4」セルに「医学」が返されます。

● 表「プロフィール」の「B2」セルのポップアップメニューで「医師」以外が選択された場合は、表「技能値」の「B4」セルに「医学 」(※ 医学の後に半角スペースが入っています)が返されます。


次に「条件付きハイライト」の「ハイライトルール」で、IF 関数で設定したのと同様に、「ルール1」で表「プロフィール」の「B2」セルのポップアップメニューで「医師」が選択された場合に返される「医学」を「テキストが次と一致」で設定し、「ルール2」で表「プロフィール」の「B2」セルのポップアップメニューで「医師」以外が選択された場合に返される「医学 」(※ 医学の後に半角スペース)を「テキストが次と一致」で設定します。


これで、「プロフィール」の「B2」セルのポップアップメニューで「医師」が選択された場合には「グリーン塗りつぶし」になり、「医師」以外が選択された場合には「レッド塗りつぶし」になります。

(塗りつぶしのカラーは、お好きな色を設定して下さい)


※ 「医師」以外が選択された場合には塗りつぶしは必要無いと言う場合は、「ルール2」は必要有りません。

ユーザがアップロードしたファイル

ユーザがアップロードしたファイル

IF 関数と条件付きハイライトが問題なく機能する事を確認後、表「技能値」の「医学(B4)」セルをクリックして選択し、マウスポインタを近付けると表示される黄色の自動入力ハンドルを、数式を適用したいセルまでドラッグします。


只、一気にドラッグすると IF 関数と条件付きハイライトで上書きされ、前のテキストが何だったのか分からなくなりますので、1つずつ行うのが賢明かと思います。


ドラッグして IF 関数と条件付きハイライトを適用後、セルをダブルクリックすると「数式エディタ」が表示されますので、IF 関数の3箇所有る " " 内の文字列と「条件付きハイライト」の「ハイライトルール」を、各々編集して下さい。

2017/02/03 22:43 LatticE. への返信

度々、失礼致します。 既に解決済みですが、AppleScriptを使ったセルの背景色の変更例はこちらのスレッドで紹介されています。 参考になれば幸いです。


 → 条件で行の色を変える方法 条件で行の色を変える方法


また、ScriptEditor.appの辞書表示機能を使って、Numbers.app用の辞書を調ると、利用可能なオブジェクトのクラスやプロパティ、コマンドなどの情報を得ることができます。


 → アプリケーションのスクリプト用語説明を表示する


また、同アプリのヘルプからAppleScriptを詳しく解説したウェッブページを参照することができます。


 → AppleScript Language Guide

2017/01/31 19:19 LatticE. への返信

失礼致します。


AppleScriptを使うことも可能だと思います。 しかしながら、その場合、AppleScriptを実行するという手作業が必要で、処理は一度しか実行されません。 なので、ポップアップの項目を変更し直す毎に自動的にハイライトも変わるという訳にはいかず、再び、AppleScriptを実行し直すという手作業が必要になります。(少し不便です) 


ポップアップの項目を頻繁に変更するような使い方を想定されていますでしょうか? あるいは、ハイライトを行う目的はどのようなものでしょうか?

2017/02/01 00:26 T22T への返信

返信ありがとうございます。

目的としては職業のポップアップから選択した際にそれに該当する技能のセルを判別しやすいようにするためです。

例:

ユーザがアップロードしたファイルユーザがアップロードしたファイル

セルの前に列を追加して該当する場合「◎」を入力させる方法も考えたのですがハイライト可能ならそちらのほうがわかりやすいかなと思った次第です

このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

条件付きハイライトについて

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。