11

こんにちは、NTTデータ WinActor技術支援チームのN.Sです。
いつもユーザーフォーラムをご利用いただき、ありがとうございます。
今回は、NTT-AT社が提供しているプチライブラリ「Excel操作(色フィルタ条件設定)」について、ご紹介します!
 
 
ライブラリの概要
指定したExcelファイルのセルに色フィルタを設定するライブラリです。
背景色がついたセルデータのみに絞り込んで処理をしたい、そんなときに使えるライブラリとなっています。

プロパティ設定項目は7つと、少し多く見えますね。 
 

 
 
 
実際に使ってみる
それではこのライブラリを実際に使ってみます。
今回は、あらかじめExcelファイルのF列「備考」の特定のセルに黄色の背景色を付けておき、その背景色がついたデータのみを抽出します。
 

 
 
 
プロパティ設定は以下の通りです。  
----------------------------------
ファイル名 : 値⇒ 色フィルタ用.xlsx
シート名  : 値⇒
セル位置  : 値⇒ F1
列番号   : 値⇒ 6
赤     : 値⇒ 255
緑     : 値⇒ 255
青     : 値⇒ 0
 

 
 

<補足①>
「セル位置」は、フィルタが設定された最左列から数えて何番目かの数字を設定します。
「C1」などと設定するとエラーとなるので注意してください。
 
※今回は「備考」の列に絞り込みを行いたいため、列番号「6」を設定
 

 
 
<補足②>
「赤」「緑」「青」の数値(RGB値)は、Excelファイルから簡単に確認することができます。
  ①色の付いたセルにカーソルを合わせ、「ホーム」タブ > 「塗りつぶしの色」の▼ > 「その他の色」をクリック
  ②色の設定画面の「ユーザー設定」タブをクリック
  ③画面下部にある「赤(R)」「緑(G)」「青(B)」の数値が、ライブラリ設定項目の設定値となります
 

 
 
  
プロパティ設定が完了したので、Excelファイルを開いておき、シナリオを実行してみましょう。
すると、F列「備考」の黄色背景のデータのみが抽出できました!
 

 
 
 
背景色でデータを絞り込む際、「塗りつぶしなし」のセルのみを抽出したい、という時もありますよね。
しかし、このプチライブラリでは塗りつぶしなしのセルの抽出はできませんでした。

代替案としては、以下の方法などが考えられます。
①塗りつぶしなしのセルに「白色」の背景色をあらかじめ付与しておき、本プチライブラリを使用する

②エミュレーションでExcelを操作し「塗りつぶしなし」でデータを絞り込む

 
 
 
③背景色を絞り込みのキーにしない
 最右列などに作業用の列を設け、数値や特定の文字列でデータを絞り込めるように対応させておく
(今回使用しているExcelの備考欄には「※」という共通の文字列を入力しているため、それをキーに絞り込んでもOK)

 

 
 
 
まとめ
標準のライブラリのフィルタ関連のプロパティ設定と共通の項目が多く、比較的使いやすいプチライブラリだと感じました。
ただ前述したように、「塗りつぶしなし」のデータの抽出はできないため、いずれも手間は若干かかりますが代替案を参考に柔軟に対応出来たら良いのかな、と思います。
注意点を踏まえて、ぜひ使ってみてください!

最後までコラムを読んでくださりありがとうございます。
紹介したプチライブラリは以下URLからダウンロードすることができます!
■「Excelファイルで色フィルタをするライブラリ」
https://winactor.biz/library/2018/11/09_432.html
 
 

おわりに
この記事が面白かった、参考になったと思っていただけたら、ぜひ「いいね!」ボタンを押してください。
コメントもお待ちしています。それでは、また次回!
 
※「いいね」はユーザーフォーラムに会員登録済みの方がログインしているときに押下できます。
ユーザーフォーラムの会員登録はメールアドレスがあればどなたでも無料で登録できます。

WA技術支援チーム 質問の投稿
回答とコメントは、会員登録(無料)で閲覧できるようになります。