Tag Archives: エクセル

UiPathでアプリケーションを最大化・最小化する方法

UiPathでアプリケーションを最大化・最小化する方法 UiPathで自分だけが使うワークフローを作るときには、環境差異などという面倒なことを考える必要がありません。ただ、それを他の人に渡すと動いていたはずのワークフローが動かなくなってしまいます。特に色がちょっと変わるだけでも動かなくなる画像認識機能などはその例として有名ですが、意外に気をつけないといけないのがアプリケーションのウィンドウサイズです。もし仮に最大化した状態で作っていた場合、相手に渡す時に「アプリケーションを最大化しないと動かないよ」、と伝え忘れてしまうとそれだけで動かない可能性があるわけです。 いやいや、セレクターでアプリをマウスクリックしているから大丈夫なんて思っても設定次第では動かなかったりします。確認するための一番よい方法は作った後で自分でサイズを変更して実行してみることですが、今回はウィンドウサイズを変えるアクティビティで対処してみましょう。ついでに反対の最小化も紹介します。 1.ウィンドウ・ブラウザにアタッチ(Attach Window・Browser Window)アクティビティを追加する 「画面上でウィンドウを指定(Indicate On Screen)」を選択し、最大・最小化したいアプリケーションを指定してください。 2.ウィンドウ・ブラウザにアタッチ(Attach Window・Browser Window)アクティビティの中にあるDoの中へ、 ウィンドウを最大化・最小化(Maximize・Minimize Window)を追加する こちらは設定不要で放り込むだけでOKです。たったこれだけでお手軽最大化&最小化が可能です。 (おまけ) もし何らかの事情で上の手が使えない場合、もう一つの手があります。それはホットキーを押下(Send Hotkey)アクティビティでWindowsキー+カーソルの上キーを押す(最大化の時)というやり方です。このやり方でも最大化は可能ですが、注意点としてすでに最大時しているものに対して同じことをするとセレクター(Selector)が見つからずエラーになる可能性があります。うまくセレクターや判定で設定してあげてください。一方、上のアクティビティは最大化していようが最小化していようが、どの状態に何回やっても問題はありません。

UiPathでEXCELから読み込んだデータにフィルターをかけよう!

UiPathでEXCELから読み込んだデータにフィルターをかけよう! ※2018.3よりUiPathがデフォルト日本語のアクティビティ名となりましたので、この記事では各アクティビティや機能名を日本語名(英語名)というように記載しています。 また、「データテーブルをフィルタリング」アクティビティはUiPathのバージョンが2018.2以降でないと使用できませんのでご注意ください。 UiPathではEXCELアクティビティを使うことで、EXCELファイルから直接データを読み込むことができました。 今回は、応用として読み込んだデータ(datatable変数)をさらに加工してみましょう。 1.Excelファイルを読み込む。 前回の記事を参照して、test.xlsのファイルを読みこんでみましょう。 ※中のデータは下記のようになっています。 TEST1 TEST2 TEST3 1 あああ 1000 2 いいい 2000 4 ええええ 4000 3 うううう 3000 2.「データテーブルをフィルタリング(Filter data table)」アクティビティを追加する。 Excel アプリケーションスコープ(Excel Application Scope)の次に、「データテーブルをフィルタリング(Filter data table)」アクティビティを追加しましょう。 なお、入力(Input)と出力(Output)に同じ変数を指定した場合は、入力(Input)で指定した変数に対してフィルターがかかりますので、 今回はその方法で設定します。 3.「フィルターウィザード(Filter Wizard)」でフィルタを設定する。 「データテーブルをフィルタリング(Filter data table)」アクティビティの中にあるフィルターウィザード(Filter Wizard)ボタンを押すと、 フィルターウィザード(Filter Wizard)が開きます。タブが2つあり、それぞれ違うフィルタを掛けることができます フィルター行(Filter Rows)※データの行に対するフィルタ 設定する項目は上記を参照してください。 参考としてTEST2の列に「あああ」という文字が入っている場合の設定は下記のようになります。 +ボタンを押すとさらに条件を追加できます。 (複数条件の場合、すべて満たす場合はAND、どれか一つの場合はOrを選びます) 出力列(Output Columns) ※出力データ列に対するフィルタ フィルタをかけたデータが出力される列を指定できます。 列名もしくは、番号で指定します。番号の場合はダブルクォーテーションはいりません。 なお、今回こちらは使用しません。 4.「範囲に書き込む(Write Range)」アクティビティ等で出力して確かめる… Read More »

UiPathでEXCELのデータの一部(セル)を読みこもう!

UiPathでEXCELのデータの一部(セル)を読みこもう! ※2018.2以前のバージョンではこの記事で説明するアクティビティを利用する前にExcel用のパッケージをインストールしておく必要があります。 また、当然ながらMicrosoft Excelがインストールされていないと利用できません。 アクティビティのシステム>ファイル>ワークブック内にあるアクティビティは、 EXCELファイルのパスを指定することでEXCEL無しでも動作できるようです。 UiPathではEXCELアクティビティを使うことで、EXCELファイルから直接データを読み込むことができます。 その簡単な使い方を覚えましょう。 今回はEXCELファイルのシートの一部、つまり指定したセルからデータを読み込む方法になります。 Read Rangeとの使い分けですが、こちらを使う場合はデータがテーブルになっていない場合、 例えば申込書のEXCELなどは、人間が見るとわかりやすい紙の書類のような形式になっていることが多く、 1行ごとに書く欄があるとは限りません。そういった場合にはこの機能で読み取った方がよいでしょう。 1.Excel Application Scopeアクティビティを追加する。 まずEXCEL系操作をする場合はこのアクティビティをセットし、対象となるEXCELファイルを決定します。 今回はなにか適当なデータが入っているファイルを選びましょう。 2.Doスコープの中に「Read Cell」を追加する。 上記を参考に読み込みたいEXCELファイルやシート名、セルの位置を指定してください。 3.プロパティのOutputにある「Result」で読み込んだデータを格納する変数を指定する。 Result欄を選択後、Ctrl+Kで新規作成すれば名前を決めるだけで変数は勝手に作ってくれます。 これで格納したいセルの数値がこの変数へ入ります。  

UiPathでEXCELファイルにデータを書き込もう!

UiPathでEXCELファイルにデータを書き込もう! ※2018.3よりUiPathがデフォルト日本語のアクティビティ名となりましたので、この記事では各アクティビティや機能名を日本語名(英語名)というように記載しています。 ※2018.2以前のバージョンではアクティビティを利用する前にExcel用のパッケージをインストールしておく必要があります。 また、当然ながらMicrosoft Excelがインストールされていないと利用できません。 アクティビティのシステム>ファイル>ワークブック内にあるアクティビティは、 EXCELファイルのパスを指定することでEXCEL無しでも動作できるようです。 UiPathではEXCELアクティビティを使うことで、EXCELファイルから直接データを読み込むことができました。 今回は、その逆である書きこみを解説していきたいと思います。 複雑なことをすると何を覚えていいのかわかりづらくなりますので、 今回はシンプルに読み込んだファイルをそのまま違うファイル名で書きだしましょう。 1.Excelファイルを読み込む 前回の記事を参照して、test.xlsのファイルを読みこんでみましょう。 以下はファイルのデータ読み込みが終わった前提となります。 2.Excelアプリケーションスコープ(EXCEL Application Scope)アクティビティを追加する 書きこみを行う前に読み込みと同様、Excelアプリケーションスコープ(EXCEL Application Scope)アクティビティを追加します。 この時、図のようにファイルパスには書き込みを行いたい場所、およびファイル名を指定します。 書きこみの場合はファイルが作成されますので、すでに存在していなくても構いません。 3.実行(Do)スコープの中に「範囲に書き込む(Write Range)」アクティビティを追加する 次に範囲に書き込む(Write Range)アクティビティを追加します。このアクティビティは指定したシート名、およびセルの開始位置から、 指定したdatatable型の変数を書きこみます。今回は範囲を読み込む(Read Range)で先ほど読みこんだEXCELの内容をそのまま書きこみましょう。 ※上の例では範囲を読み込む(Read Range)で「testtable1」というdatatable型の変数にtest.xlsxというEXCELファイルの内容を読みこませ、 それをtest2.xlsxというEXCELファイルに書き出そうとしています。     4.実行する 準備が終わったら実行(Run)しましょう。 実行が終わると、先ほど指定した場所にtest2.xlsxというファイルが作成されています。 なお、2回目以降は強制でtest2.xlsxの内容が上書きされますので注意してください。 特に、前の行数より後の実行のほうが行数が少ないときは古い情報と新しい情報が混ざってしまいますので、 注意が必要です。 (おまけ) 範囲に書き込む(Write Range)アクティビティのプロパティには1つのオプションがあります。 ・ヘッダーの追加(Add Headers) このチェックボックスをオンにすると、読み込む際にヘッダーの追加(Add Headers)のオプションがオンになっていた行を、 EXCEL書きこみの先頭行にヘッダー行として書きこむようになります。 もしヘッダーの追加(Add Headers)の設定がされていないものに対してこのチェックを入れて書きこんだ場合は、 「Column*」という列名が先頭に書きこまれます。(*の部分には列の順番が入ります) ※2018.3では、範囲を読み込む(Read Range)でヘッダーの追加チェックを外してもヘッダーを取得しているようです。 バグかどうかもよくわからないので、このまま記述は残しておきます。

UiPathでEXCELのデータを読みこもう!

UiPathでEXCELのデータを読みこもう! ※2018.3よりUiPathがデフォルト日本語のアクティビティ名となりましたので、この記事では各アクティビティや機能名を日本語名(英語名)というように記載しています。 ※2018.2以前のバージョンではアクティビティを利用する前にExcel用のパッケージをインストールしておく必要があります。 また、当然ながらMicrosoft Excelがインストールされていないと利用できません。 アクティビティのシステム>ファイル>ワークブック内にあるアクティビティは、 EXCELファイルのパスを指定することでEXCEL無しでも動作できるようです。   UiPathではEXCELアクティビティを使うことで、EXCELファイルから直接データを読み込むことができます。 その簡単な使い方を覚えましょう。 1.Excelアプリケーションスコープ(EXCEL Application Scope)アクティビティを追加する まずEXCEL系操作をする場合はこのアクティビティをセットし、対象となるEXCELファイルを決定します。 今回はなにか適当なデータが入っているファイルを選びましょう。 例としてSheet1シートに以下のような表のデータが入っている前提で進めていきます。 TEST1 TEST2 TEST3 1 あああ 1000 2 いいい 2000 4 ええええ 4000 3 うううう 3000   2.実行(Do)スコープの中に「範囲を読み込む」(Read Range)アクティビティを追加する。 デフォルトで”Sheet1″と””という文字列が入っています。 今回例のようなデータがあるシートはSheet1となりますので、 このままの設定で問題ありません。もし自分でシート名をつけていたら変更してください。 CドライブにあるtestというEXCELファイルを対象にした設定例が以下になります。 3.「範囲を読み込む」(Read Range)アクティビティのプロパティで、EXCELデータの格納先を指定する 「範囲を読み込む」(Read Range)アクティビティのプロパティの中に出力(Output)がありますので、 そこにEXCELから取りこんだデータを格納する変数を指定します。 本当はここまででEXCELのデータをUiPathに取りこみ完了しているのですが、 それだけだと意味がわからないと思いますので、以降で出力してみます。 4.取りこんだデータを出力させるために、「繰り返し(各行)」(For Each Row)アクティビティとメッセージボックス(message box)を追加する 取り込んだデータはDatatable型という変数の中に入ります。 これを取りだす時に便利なのが「繰り返し(各行)」(For Each Row)というアクティビティです。 一つの列のデータを取りだし、メッセージボックス(message box)で表示させる準備をします。… Read More »

UiPathからEXCELのVBAを呼び出そう!

UiPathからEXCELのVBAを呼び出そう! ※このアクティビティを利用する前にExcel用のパッケージをインストールしておく必要があります。 また、当然ながらMicrosoft Excelがインストールされていないと利用できません。 UiPathではExcelの操作を自動化できるため、ExcelのVBAのようなものも作ることができますが、 すでにExcelでVBAを使って自動化をしていた場合、せっかく作ったVBAが無駄になってしまう、 ということもあるかと思います。そんなときに便利なのがこのアクティビティです。 1.Excel Application Scopeアクティビティを追加する。 まずEXCEL系操作をする場合はこのアクティビティをセットし、対象となるEXCELファイルを決定します。 今回はVBAのマクロが入っているファイルを選びましょう。 2.Doのスコープ内にExecute Macroアクティビティを追加する。 3.Execute Macroにマクロ名(SubやFunction名)を設定する。 これで準備完了です。 ※起動すると下記のようなエラーが出る場合 実行時に上記のようなエラーが出る場合、様々な理由がありますが、 例えばMacro名の指定が間違っているというものがあります。 例えばSheet1の中にtestというマクロを作成していた場合は正しく「sheet1.test」と指定する必要があります。 そのほかではEXCELのセキュリティ設定に注意してみてください。 特に自分のPCで動くけど、他人のPCで動かない場合はこちらが怪しいです。 1.EXCELを開き、リボンメニューの「ファイル」タブを押します 2.オプションメニューを選択します 3.セキュリティセンターを選択します 4.セキュリティセンターの設定ボタンを押します 5.「マクロの設定」メニューを選びます 6.マクロの設定、および開発者向けのマクロ設定が有効になっていることを確認します

UiPathでEXCELを操作させよう!

本記事はUiPathのバージョン2018.2以前の方向けの記事となります。 2018.3(=日本語版)以降ではデフォルトでインストールされていますので、このインストール作業は必要ありません。 UiPathでEXCELファイルを読み込ませたい場合、EXCEL専用のアクティビティを使うのが便利です。 今回はその導入方法を解説します。 1.ワークフローの開発画面を開き、アクティビティパネルにあるパッケージウィンドウのボタンを押します。 2.下記のようなManage Packagesウィンドウが表示されます。 なにも導入していないと、下のようにCoreのみが表示されます。 3.Availableメニューを選択します 4.大量のインストール可能なパッケージが表示されます。 5.検索ウィンドウで「excel」と入力します 6.結果の中から「UiPath.Excel.Activities」のInstallボタンを押します 7.ウィンドウを閉じ、アクティビティを確認するとexcel関連のアクティビティが追加されています。 以上でexcelのアクティビティ追加が完了しました。