Tag Archives: 基本

UiPathで文字数をカウントする方法

UiPathで文字数をカウントする方法 UiPathを使って文字数をカウントする方法を紹介します。 1.まず変数などに、カウントした文字列が入っている状態にします。もちろん、EXCELから読み込んだdatatbleを繰り返し(各行)アクティビティ(For Each Row)で処理中でも大丈夫です。例えば代入アクティビティで右の文字列(text1)をカウントした結果を左の変数(count)に入れたい場合は以下のようになります。 文字をカウントするときはLen(カウントしたい文字型の変数)というように指定します。すると、countの中に文字数が入ります。 この時の注意点としては、text1はstring型の変数、もしくはrow(“列名”).ToStringのように、string型に変換済みであること。また、左の変数はInt32などの数値が入れられる型であることです。よくわからん、という方は左側がGenericValue型でもOKです。ただし、右はString型でないとエラーになります。 ※GenericValue型は何も決めずにとりあえず下の変数タブや右クリックメニューやCtrl+Kのショートカットで変数を作れば自動で指定されます。  

UiPathでユーザーに任意のフォルダ・ファイルを選択させる方法

UiPathでユーザーに任意のフォルダ・ファイルを選択させる方法 ※2018.3よりUiPathがデフォルト日本語のアクティビティ名となりましたので、この記事では各アクティビティや機能名を日本語名(英語名)というように記載しています。 UiPathを使ってユーザーに処理対象となるフォルダやファイルを選択させたい、 ということはよくあると思います。今回はそんなときに便利なアクティビティを紹介していきます。 ・ユーザーにフォルダを選択させたい時に使うアクティビティ そのまんまですが「フォルダーを選択」(Select Folder)アクティビティを使用します。 このアクティビティを使うと、ダイアログが表示され(Windows標準のエクスプローラのような形です)ユーザーにここでフォルダを任意に選択させることができます。 ユーザーが選んだフォルダのパスはプロパティの出力にある「選択されたフォルダー」で指定した変数に文字列として格納されます。 ・ユーザーにファイルを選択させたい時に使うアクティビティ こちらもそのまんまですが「ファイルを選択」(Select File)アクティビティを使用します。 このアクティビティを使うと、ダイアログが表示され(こちらもWindows標準のエクスプローラのような形です)ユーザーにここでファイルを任意に選択させることができます。 ユーザーが選んだファイルのパスはプロパティの出力にある「選択されたファイル」で指定した変数に文字列として格納されます。なお、特定のファイルだけ(例えば.xlsxや.pdf)を表示させたい場合は入力プロパティの「フィルター」に書かれている、(*.*)|*.*を(*.xlsx)|*.xlsxというように書き換えることで、エクスプローラに表示されるファイルの種類を限定できます。 なお、複数フィルタを掛けたい場合はカンマで区切ってください。例えばExcel関連なら(*.xls,*.xlsx,*.xlsm)|*.xls,*.xlsx,*.xlsmとなります。ちなみにこの情報は上の設定をエラーにしたときに出るんですけど、エラーじゃなくてわかる場所に書いて欲しいんですよね。 そういうとこだよ、UiPath。 (注意点) フォルダ・ファイルに共通して注意点があります。ユーザーは必ずしも思ったとおりに操作してくれるとは限りませんので、例えば「ダイアログを閉じる」なんてことは当たり前のように起こります。 選択せずにダイアログを閉じてしまうと「フォルダ・ファイルが選択されなかったエラー」が発生しますので、エラーハンドリングをしないとシナリオはそこで止まってしまいます。 また、ファイルの場合は間違った種類が選択されないようフィルタをかけたり、後でシナリオ内でのチェックを行うなどしてください。  

UiPathでEXCELの特定セルの色を取得する

UiPathでEXCELの特定セルの色を取得する ※2018.3よりUiPathがデフォルト日本語のアクティビティ名となりましたので、この記事では各アクティビティや機能名を日本語名(英語名)というように記載しています。 今回はEXCELの所定セルの色を取得する方法を解説します。 これを使って取得した色は「範囲の色を設定(Set Range Color)」アクティビティ等で利用することができます。 1.Excelアプリケーションスコープ(EXCEL Application Scope)アクティビティを追加する まずEXCEL系操作をする場合はこのアクティビティをセットし、対象となるEXCELファイルを決定します。 今回はSheet1に対して操作を行っていきます。 2.セルの色を取得(Get Cell Color)アクティビティを追加する 実行シーケンス内にセルの色を取得(Get Cell Color)アクティビティを追加します。 3.セルの色を取得(Get Cell Color)プロパティで色を取得したいシート名とセルを指定する セルの色を取得(Get Cell Color)アクティビティを選択し、プロパティウィンドウでシート名(例だとSheet1)、セル範囲(A1:A2等)を指定します。 4.セルの色を取得(Get Cell Color)プロパティでColor型の変数を指定する 最後に取得した色の情報を格納するColor型の変数を指定します。Ctrl+Kもしくは右クリックメニューで変数を作成すると簡単です。    

UiPathでパスワード付きのExcelを開く方法

UiPathでパスワード付きのExcelを開く方法 ※2018.3よりUiPathがデフォルト日本語のアクティビティ名となりましたので、この記事では各アクティビティや機能名を日本語名(英語名)というように記載しています。 EXCELで業務を自動化する際に引っかかりやすい点としてEXCEL自体にパスワードがかかっているパターンがあります。 UiPathではこういったパスワード付きのファイルについてもあらかじめパスワードを設定しておくことで、 開くことが可能です。以下で、パスワード付ファイルの設定方法を紹介していきます。 1.読み取り専用パスワードの場合 はじめにExcelファイルを指定するため、Excelアプリケーションスコープ(Excel Application Scope)アクティビティを追加します。 ここで、プロパティの下画像「パスワード(Password)」部分にEXCELに設定している「読み取り専用パスワード」を入力すると、読み取り用パスワード入力をせずそのまま開くことができます。 2.書き込みパスワードの場合 上記と同様、Excelファイルを指定するため、Excelアプリケーションスコープ(Excel Application Scope)アクティビティを追加します。 ここで、プロパティの下画像「編集用パスワード(EditPassword)」部分にEXCELに設定している「書き込みパスワード」を入力すると、書き込みパスワード入力をせずそのまま開くことができます。

UiPathで複数ファイルに同じ処理をする方法

UiPathで複数ファイルに同じ処理をする方法 UiPathではいろいろな作業を自動化することができます。作業には1回限りのものや、 ファイルを変えて同じことをするといった繰り返し作業などいろいろなパターンがあります。 今回は上記のファイルを変えて同じことをする=複数ファイルへの同じ処理をさせる方法を紹介します。 1.1フォルダにファイルを作業対象のファイルを集める まず作業をさせたいファイルを1フォルダの中にすべて格納しましょう ※例としてc:\testにtest1~3というEXCELファイルを入れています。 2.For Each アクティビティを追加する For Eachアクティビティは繰り返し処理を行うためのアクティビティです。 このアクティビティは繰り返す回数をファイルの数、とすることができますので、 何回実行するかはファイルの数で自動的に変更することができます。 3.For Eachの対象として「Directory.GetFiles」メソッドを使う .netのメソッドにはDirectory.GetFilesという、「フォルダの中のファイルすべて」を指定することのできるメソッドがあります。 UiPathはこうした.netのメソッドをそのまま利用することができますので、こちらをFor Eachの繰り返し条件として設定します。 具体的には以下のような使い方になります。 Directory.GetFiles(”フォルダの場所”) 括弧の中のフォルダの場所は文字列(String)でないといけませんので、 あらかじめ文字列を入れたString型の変数を指定するか、 “ ”でWindowsのフォルダパス(c:\test等)を記述します。 記述する場所はitem inの後にある入力欄の中になります。 ※例ではDirectory.GetFiles(“C:\test”)と記載しています 4.Bodyに繰り返しさせたい処理を記載する あとはFor Eachの中にあるBodyの中に、繰り返しさせたい処理を作りこんでいくだけです。 上記例ではitemという変数の中にフォルダの中にあるファイルのObject情報が1つずつ入っていくので、 それをメッセージボックスで表示させています。 ※Object情報以外の型にしないといけない場合もあるので、 その際はプロパティのTypeArgument部分をString等、ほかの変数の型に変更させて使います。 実行すると、上記のように1ファイルごとのパスが表示できました。

UiPathでWordファイルをPDFファイルに変換しよう

UiPathでWordファイルをPDFファイルに変換しよう ※この記事で説明するアクティビティを利用する前にWord用のパッケージをインストールしておく必要があります。 また、当然ながらMicrosoft Wordがインストールされていないと利用できません。 UiPathではWord専用アクティビティを使うことで、簡単にWordファイルをPDFへ変換することができます。 以下でそのやり方を紹介します。 1.「Word Application Scope」アクティビティを追加する 「Word Application Scope」アクティビティを選択してワークフローの中にドラッグアンドドロップします。 Wordの処理を行う際はまずこれを追加します。   2.「Word Application Scope」のDoの中に「Export to PDF」アクティビティを追加する   Export to PDFの中にはPDFに変換した際のファイル名を付けます。以上で完了です。 ※複数ファイルへの応用編はこちら。    

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で複数ファイルをドラッグ&ドロップする方法

UiPathで複数ファイルをドラッグ&ドロップする方法 UiPathのドラッグ&ドロップについてはこちらの記事でやり方を紹介しています。 このやり方、実は妙なクセがあり、複数ファイルを選択した際はうまく動作しません。 例えばRecordingで複数ファイル選択操作を記録しようとした場合、 おそらくマウスの範囲選択で複数ファイルを指定します。 その後、どれか1つのファイルをドラッグ&ドロップで目的の場所へ移動させます。 UiPathではドラッグ&ドロップをHoverアクティビティを組み合わせることで実現していますが、 このやり方では1ファイルの時しか動作できません。 ということで、今回は複数ファイルのドラッグ&ドロップのやり方を紹介します。 1.まずキーボードでCtrlキーを押し続ける 「Type Into」アクティビティを選択してワークフローの中にドラッグアンドドロップします。 Ctrlキーなので「Send Hotkey」アクティビティと考えるかもしれませんが、 こちらは押した後に離してしまいますので、ファイルの複数選択ができません。 キーの押しっぱなしをするにはType Intoアクティビティで押しっぱなしの指定をする必要があります。 ※Type Intoの上記のような設定はこちらでも紹介しています。 まずType Intoで「”[d(ctrl)]”」と入力します。 「Indicate On Screen」を選択し、どれでもよいので選択したいファイルの1つを指定してください。   2.1ファイル目のドラッグ開始する場所(始点)で左クリックを押し続ける設定をする 「Click」アクティビティを選択してワークフローの中にドラッグアンドドロップします。 ここは1ファイルの時と変わりません。 Clickアクティビティの「Indicate On Screen」を選択し、左クリックを押し続ける対象を指定し、 Clickアクティビティのプロパティウィンドウから「Input」>「ClickType」の中にあるプルダウンメニューを開き、 メニューから「CLICK_DOWN」を選択します。ここも1ファイルの時と一緒です。 3.残りの選択したいファイルすべてに対してClickを1つずつ設定していく 先ほど行った1の手順の設定を選択したいすべてのファイル(フォルダ)ごとにそれぞれ設定していってください。 要は「CLICK_DOWN」をドラッグアンドドロップしたい全ファイルに設定してあげればOKです。 4.ドロップする場所(終点)を指定する 「Hover」アクティビティを選択してワークフローの中にドラッグアンドドロップします。 ここも1ファイルの時と変わりはありません。1回のみ設定すればよいです。 「Indicate On Screen」を選択し、「マウスをドラッグして移動させたい先」を指定します。   5.ドロップする(マウスから指を離す) 1と同じように「Click」アクティビティを選択してワークフローの中にドラッグアンドドロップします。 Clickアクティビティの「Indicate On Screen」を選択し、2で選択したものと同じ対象(終点)を指定し、 Clickアクティビティのプロパティウィンドウから「Input」>「ClickType」の中にあるプルダウンメニューを開き、 メニューから「CLICK_UP」を選択します。 なお、この時はどれか1つの設定のみで大丈夫です。 6.キーボードのCtrlキーを離す 最後にもう一つType Intoアクティビティを追加します。 「Indicate… Read More »

UiPathの文字を入力(TypeInto)で覚えておきたい設定

UiPathの文字を入力(TypeInto)で覚えておきたい設定 UiPathでは文字を入力(TypeInto)アクティビティを使うことで、キーボードの入力を自動化できます。非常に単純なアクティビティではありますが、うまく設定を使いこなせないと行き詰まる場面があります。今回はその回避策を紹介していきます。 1.キー入力の間隔を調整する キー入力を自動化するとはいっても、相手のアプリケーションの面倒まではなかなか見てくれません。キーの反応にすぐ対応してくれるものであればよいですが、早すぎるとメニューが開かないものなどもあります。そうしたときは下記の「キー入力間の待機時間(DelayBetweenKeys)」プロパティで、1つ1つのキー入力の間に待機(delay)を入れることができます。 何も設定しない場合は10ミリ秒、最大で1000ミリ秒が指定可能です。   2.キーを押しっぱなしにする クリック(Click)アクティビティにはドラッグアンドドロップで説明したようなマウスのボタンを押し込む、離すという設定がありました。文字を入力(TypeInto)にも全く同じ設定が可能です。これを覚えておかないと例えばCtrlキーを押しながらほかのキーをいろいろ押すという操作ができません。 ここではプロパティではなく、押したいキーの記法を覚えます。 ・k[押したいキー名] まず、横の+ボタンを押してキーを設定したときにデフォルトで設定されるものがこちらです。kは正直何の略かよくわかりません(クリックっぽいですがcではないので)これはキーを押して離すという、人間が普通にキーを押したときの処理になります。 ・d[押したいキー名] キーを押しっぱなしにする指定方法です。 ・u[押したいキー名] キーを離すときの指定方法です。 dの後には同じボタンのuが来るように記載します。※そうしないと動作終了後もずっと押したままになってしまいますので注意してください。もしそれで起動してしまっても、人間が同じキーを押せば挙動は戻ります。 3.特殊な文字で問題が出る場合 半角文字等の特殊な文字を入力させたい場合にうまく入力されない場合、下記のプロパティで入力をシミュレート(SimulateType)をオンにしてみてください。入力させる方法をUiPath上で変更することができます。 文字によっては標準の方法でうまく入力できない場合があります。これらオプションの詳しい違いについては、UiPath本家のチュートリアルムービーでも解説されていますので気になる方はそちらもご確認ください。   (おまけ)どうしても駄目なとき 入力させたい文字がどうしても入らない場合は、文字を入力(TypeInto)ではないもう一つの手段があります。それは人間のコピー&ペーストと同じ動作です。クリップボードに設定(Set To Clipboard)を使って、クリップボードにいったん入力させたい文字をセットします。次に、ホットキーを押下(Send Hotkey)アクティビティを使ってCtrl+Vを押させることで、目的の入力欄へペーストします。これにより一気に文字列が入力されるので、1文字ずつの入力間隔等で問題が発生している場合は解決が可能です。

UiPathでEXCELシート名を変えよう

UiPathでEXCELシート名を変えよう UiPathではExcelアクティビティを使うことで、エクセルファイルから読み込んだデータの内容を処理することができました。しかし、データを読むだけが人間のする作業ではありませんので、実際にはEXCEL内での操作も自動化したいとなります。例えばよくあるものの一つとして、「Excelのシート名を変える」という作業があります。 人間がやると非常に簡単なのですが、残念なことにUiPathでは、EXCELを開き、EXCELそのものに対して何かをする、というのを補助するようなアクティビティはあまりありません。 では、無理かというとそうではありません。RPAは基本、人間がやっていることと同じことはできますので、同じ操作を作ってあげればよいです。やり方に正解はありませんが、いくつか例を紹介していきます。 1.シート名の部分をマウスでダブルクリック>変更する方法 おそらく人間と同じやり方、といわれて最初に思いつくのはこのやり方ではないでしょうか。ダブルクリック(Double Click)アクティビティを選択し、変えたいExcelのシート名部分をクリックします。 ダブルクリック(Double Click)アクティビティはクリックアクティビティと名前こそ違いますが、中身はプロパティの「クリックの種類」が最初からダブルクリックに指定されたただのクリックアクティビティです。次に文字を入力(Type Into)アクティビティを追加し、画面上で指定(Indicate on screen)を選び先ほどのシート名の部分を選択します。文字を入力(Type Into)で入力させるテキストに、変えたいシート名を入力させます。 ここで注意点として、セレクター(Selector)の指定方法があります。 上記の「画面上で指定」を使って指定したままでは開いたときのファイル名情報やシート名情報が埋め込まれていますので、それらを「*」アスタリスクに変えてあげる必要があります。クリック(Click)や文字を入力(Type Into)アクティビティのメニューボタンをクリックし、「セレクターを編集(Edit Selector)」を選択します。 中に固有の名称が含まれていたらそれらを「*」アスタリスクに変更して下さい。※画面はExcel2010のものです。Excel2016の場合はこれと異なります。   2.キーボードショートカットで「シート名の変更」をする 先ほどはクリック操作を使うことで、シート名変更モードにしていましたが、こちらはキーボード操作のみでする方法です。 まず文字を入力(Type Into)アクティビティを追加します。次に画面上で指定(Indicate on screen)で名前を変更したいシート全体を選択し、入力させる文字として「[k(alt)]hor」と入力します。これはAltキーを押しながらH,O,Rの順にキーを押しています。早すぎると動かない場合はプロパティのオプション(Options)にある、キー入力間の待機時間(DelayBetweenKeys)を500~1000位で入れてもいいかもしれません。 すぐ下にもうひとつ文字を入力(TypeInto)アクティビティを入れ、変えたい名前とEnterキーを入力させれば完了です。※慣れている方であれば、1つのTypeIntoアクティビティにすべて書いても構いません。 こちらもセレクター(Selector)には気をつけてください。 3.VBAを呼び出す 上とは全く違うやり方で、VBAの機能を使ってシート名を変更させます。VBAの起動にはExcelアプリケーションスコープ(ExcelApplicationScope)やEXCELの設定でマクロが起動できるという前準備が必要です。VBA自体の方法はいくらでもネットで見つかりますので、ここでは割愛します。UiPathでのVBA起動の方法についてはこちらの記事を参考にしてみて下さい。