Excelの条件付き書式をブログで表示する方法
僕は同期会HPを担当していて、Excelで渡された名簿をHPに掲載するという話は以前お伝えしました。
Excelの表をブログに貼り付けるのは、これが一番スマートかな? - namjun's blog
今度は、「連絡が取れる人と取れない人と確認中の人を色分けして掲載せよ」というお題が出されました。
これって条件付き書式ってやつ?
Excelの表に一列挿入して、連絡が取れる人=a、確認中の人=b、連絡が取れない人=cと入力してもらう。
bなら文字色が青、cなら赤という、条件付き書式を設定する。
一苦労して何とかできました。覚え書きしておきます。
Excel for mac2011です。
「書式」から「条件付き書式」を選びます。
↓
+ボタンを押して、新しい書式ルールウィンドウを立ち上げます。
↓
「スタイル:クラシック」を選択して、
「数式を使用して書式設定するセルを決定」を選択。
数式はB列が文字列bの時なので、「 =$B1="b"」とします。←これが苦労しました。列のみ絶対参照します。
書式はユーザー設定書式..から設定しました。
適用範囲は色を変えたい範囲全てを指定します。
同様にして、cのときは文字色赤に設定しました。
↓こんな感じになりました。
ん?Excelで色分けしてもダメじゃん!
Excelの条件付き書式をhtmlタグに翻訳する
色分けするhtmlタグを表示させないといけません。
まず、列を挿入して、表タグを入力します。a,b,cはHPに載せないので、一番後ろの列にします。
このC列に色分けするhtmlを表示させますが、G列の入力内容によって変えなくてはいけません。
「このセルの値が〜なら、文字列ーーとする」ということなので、IF関数を使いました。
関数の書式は =IF(セル=値、trueの時の値、falseの時の値)です。
また、書式を表すには、style="color:blue;" というタグを使います。
<td>と合わせて、<td style="color:blue;">となります。
G列が文字列bなら、文字列<td style="color:blue;">を返してもらうので、
=IF(G1="b","<td style="color:blue;">","">
とC1セルに入力しました。
どうする〜。
調べました。
Excelの関数の中にダブルクォーテーションを文字として使うときはダブルクォーテーションを印として使う。
<td style="color:blue;">を<td style=""color:blue;"">とするということです。
さて、IF関数に戻ります。
=IF(セル=値、trueの時の値、falseの時の値)
このfalseの時の値の所に IF()を入れて、入れ子にもできます。
そこにはG1="c"の時<td style:"color:red;">という文字列を返すように記入します。
さらにそれもfalseの時は、黒文字で良いので、<td>と返すようにします。
合わせて、C1に入れる数式は
=IF(G1="b","<td style=""color:blue;"">",IF(G1="c","<td style=""color:red;"">","<td>"))
となります。
これを下方向にコピーします。
F列までをコピーして、このブログ記事のHTML編集に貼り付けました。
松井 裕樹 |
塩見 貴洋 |
濱矢 廣大 |
則本 昂大 |
トラビス・ブラックリー |
森 雄大 |
やっとできました〜。↓これを貼り付ければ良いだけなんですが..
=IF(G1="b","<td style=""color:blue;"">",IF(G1="c","<td style=""color:red;"">","<td>"))