2011年7月3日日曜日

バーグラフとオートフィルタの注意点

前記事「青木リストでオートフィルタの活用方法」の続きです。
今回は、ExcelオートフィルタBarGraphViewerを組み合わせた使用方法での注意点を解説します。

はじめに、前回と同じようにオートフィルタを使い、放送局名の「R.JAPAN」を抽出してみましょう。 放送局名なので「STATION」 をクリックし、表示される一覧から「(オプション)」を選択し、オートフィルタオプションのダイアログボックスを表示します。

つぎに、「STATION」リストボックスに、放送局名の一部分の文字列としてjapanと入力、右側のリストボックスでは「を含む」を選択します。
「OK」ボタンを押すと放送局名に「japan」を含む放送局名が抽出されます。

オートフィルタで「R.JAPAN」が抽出された結果を下図に示します。 ここで、図の赤丸の部分に注目してください。(クリックで拡大表示します)。

この部分が、ExcelオートフィルタBarGraphViewerの組み合わせでの注意点です。

右側の赤丸部分では、

  • 101行の 738kHzのバーグラフの左側には、下行の167行と同じ色のバーグラフが表示されています。
左側の赤丸部分では、
  • 344行の 1350kHzには、下行の374行の放送時間の長さのバーグラフが表示されています。
  • 374行の 1386kHzには、下行の1812行の放送時間の長さのバーグラフが表示されています。
このままバーグラフを見ると、放送時間や放送言語を勘違いする可能性があります。

余談ですが、バーグラフに罫線を使った理由ちょっと書いておきます。

Excelシートをご覧になると判るように 「BarGraphViewer」では、バーグラフをExcelの罫線を使用して表示しています。 (はじめは、図形オブジェクトでバーグラフを作りました。 データが10,000行近くあることから、バーグラフを図形オブジェクトで作ると動作が重くなり、ファイルサイズもかなり大きくなるため、罫線を使う方法にしました。)

閑話休題

そこで、簡単な表を作って調べてみました。「title列」のA行は赤色の下罫線、「title列」B行は緑色の下罫線を引き、11行目までコピーしています。

title列」にオートフィルタを設定し、フィルタ条件を「A」にすると。 データ 「A」の行が抽出され、罫線色も正しく表示されます。

次に、フィルタ条件を「B」にすると。 データ「B」の行が抽出されて表示されますが。 関係の無いセル「H1」に赤色の下罫線が表示されたり。 データ「B」のセルH3、H5、H7、H9の下罫線の色も赤色に変わっています。

何故こうなるのか調べてみましたが解りませんでした、これがExcelの仕様なのかバグなのでしょうか?

このような事から、「BarGraphViewer」で作成したワークシート「BARGRAPH」では。 オートフィルタを「オフ設定」にしていました。 しかしながら、「Excelオートフィルタ」は便利な機能なので、ぜひ使いたいところです。

オートフィルタを使った時に罫線が変にならない方法を見つけるために、いくつかの方法を試してみましたが、どれも良い結果に結びつきませんでした。 そこで発想を変えて別の方法で試してみたところ上手くいきましたので、この機能を「BarGraphViewer」に「バーグラフ再描画」として追加てみました。

「バーグラフ再描画」を先ほどの「R.JAPAN」のバーグラフで実行すると。 このように、バーグラフの表示が正しくなったことが、おわかりになると思います。

この 「バーグラフ再描画」機能は、オートフィルタで抽出した行に対して、悪影響を与えている罫線を消した後に、バーグラフを再描画するといった単純な機能です。 抽出後の再描画なので、オートフィルタで行が折り込まれて、罫線表示がおかしくなる問題が解決できます。 残念ながら、オートフィルタに連動して自動的に動作するわけではなく、簡単な手動操作が必要です。

操作手順は

  1. オートフィルタで抽出条件を設定して、データを抽出する。
  2. 「BarGraphViewer」メニューで、「バーグラフ再描画」を選択して実行する。
となります。

後でオートフィルタを「オフ」にして、行全体の表示に戻った時には。 再び「バーグラフ再描画」を実行する事で、青木リスト全体のバーグラフ表示を正しく書き直します。

新機能の「BarGraphViewer」は、先日Webサイトの更新も済ませたところなので、間もなく公開予定です。

追記 Jun 11, 2015
最新版で、この問題は修正されています。バーグラフを再描画することなくオートフィルタを使用できるようになりました。

0 件のコメント :