UiPath講師のNakayamaです。いつも私は企業向けに講義を行っています。
その中で、UiPathの導入において他の製品と比べて「UiPathのプログラミング言語を理解することが難しい」のではないか、という声を聞いてきました。それに「アカデミーも60Hもかかるし、業務をしながら学ぶ時間もない。」という意見が大半です。
今回は、第一回目としてUiPathについて基本的な理解をしていただけるようにしました。
UiPathはVB.NETというプログラミング言語を使っていますから、プログラミングの観点からEXCELで使用されているVBAとVB.NETの違いについて、かつ記述方法の違いについて全体像を理解できるように説明を致しますね。
経験者によるマンツーマントレーニング!
プログラミング経験ないけど1ヶ月でUiPathができるようになれるコースはこちら↓
目次
【問題】メッセージを表示する<VBAと.NETの違い>
さあこれから、EXCELで作ったものと同じプログラムをUiPathで作ってみましょう。
これまで皆さんは、EXCELのVBAを見たことはありますか?作ったことのない人ももう一度学びましょう。
①EXCELを立ち上げてみましょう。(画面:バージョンEXCEL2019)
②メニューにある開発ボタンをクリックします。(Alt+F11)
注意:開発ボタンが見つからない人は、プロパティーで設定を行います。
③visualBasicをクリックしましょう。すると、Microfoft Visual Basicの画面が表示されます。
This WorkBookをクリックして選択しましょう。
④では下記のコードを入力してみましょう。
⑤一旦、ファイルを保存しますので、保存ボタンをクリックして
名前を「Message」としてファイル形式を「EXCELマクロ有効ブック.xlsm」に変更してデスクトップに保存しておきましょう。
では、さっそく実行できるかどうかを確認してみましょう。
三角形のボタンをクリックするか、F5で実行します。
メッセージが表示されましたか?
これがVBAのプログラミングです。
では、皆さんに伺います。このプログラミングの基本構造はどうなっていますか?
しばらく考えてください。
プログラムとは?
改めて答えてくださいと言われると?となるはずです。さあ、考えてください。
答えは、三つあります。
プログラミングの基本構造は、
-
順次構造(上から下に実行)
-
選択構造(IF)
-
反復構造(LOOP)
の三つの構造から成り立ちます。
コンピューターを動かすためには上記のルールにのっとって記述する必要があります。
-
順次構造とは・・・
コンピューターはプログラムを上から下に向かって順に読んでいくということです。プログラミングを記載するときには
コンピューターにしてもらいたいことを上から順にプログラミング言語で書いていけばプログラムは出来上がるということです。
-
選択構造とは・・・
Ifというプログラミング言語で書く。「もしも・・・だったら」に使います。つまり条件を設定して全体のデータから一部を絞り込むときに使うものです。
-
反復構造とは・・・
プログラミングでは、同じ作業を繰り返す時がある。その際に指示を何度も出さないように反復を指示する。そうすれば指示した回数だけ作業を反復させることができる。それによって手数を省くことができる。
下記の例では。グリーンの枠にある[For Next]が繰り返しつまり、反復構造になります。
その他どのプログラミング言語であっても共通のこのルールにのっとってプログラミングを記述していきます。
主なプログラミング言語の種類
主なプログラミング言語を見てみましょう。
EXCELなどのVBAはMicrosoftのEXCELに付随したプログラミング言語であり、EXCELを起動してVBAを記述しないと実行できませんでした。
しかし、今回学ぶUiPathで使うプログラミング言語は、VB.netです。さらにVB.netは同じマイクロソフトが開発したソフトであり、かつWindowsアプリや業務システムを開発できるのです。そしてUiPathもこのVB.netで作られたソフトウェアなのだということを理解しておきましょう。
他にも下記の表のように複数のプログラミング言語があります。参考までに見ておいてくださいね。
VB.netでは、プロジェクトというまとまりでプログラムを管理します。
VB.netで使う変数や、定数、関数についての説明は、またの機会にして次に進みましょう。
UiPathで同じプログラムを作ろう
UiPathをインストールする
Enterprise版とCommunity版の2種類があります。
サンプルシナリオの実行のみで使用する場合は、Community版をダウンロードしてください。
UiPath Community 版
個人ユーザー、エンタープライズ、その他の法人が評価およびトレーニング等の目的で 利用可能な無償製品です。
ご利用の際にはUiPath社のCommunity版ライセンス規約に則っていただく必要があります。
UiPath Enterprise 版
企業向けの商用製品となります。
検証用、PoC用として、RPA導入を検討されている企業のお客様向けの60日間無償で利用可能なトライアルライセンスが用意されています。ご利用の際にはUiPath社の トライアルライセンス規約に則っていただく必要があります。
アクティベーションをした時点で1社分(最大10ライセンス)のトライアル期間が開始となります。
※詳しい違いについては下記URLにアクセスし、確認してください。
UiPathを立ち上げる
①今回は、個人向けのCommunity 版(安定)を起動しましょう。
※Version2019.10.3に画面ではなっています。ご了承下さい。
②トップ画面です。右側の新規プロジェクトのプロセスを選択します。
③ポップアップ画面が表示されるので、先ほどのEXCELと同じ名前「Message」で保存します。
名前と説明に「Message」と記入して「作成」ボタンをクリックします。
④中央画面の「Mainワークフローを開く」をクリックします。これでMain.xamlが開きました。やっとプログラミングできます!
UiPathのトップ画面構成
中央が開発するためのスペースです。そして左がファイル構成やアクションの設定のツール、アクティブティという画面、スニペットがあります。
UiPathの開発
⑤さっそく、左のタブをクリックしてアクティビティを設定していきましょう。
と同じものを作ります。つまりメッセージを表示させるのです。
EXCELのVBAでは、
Sub test()
MsgBox “今日は” & Date & “です。” & vbCrLf & “今はUiPathを勉強しており、” & Time & “です。”
End Sub
と記述しました。ではUiPathではどうすればいいのでしょう。しばらく考えてみてください。
アクティビティの使い方
たくさんのアクションが設定できそうです。今回はメッセージを表示するのですね。
④どこにあるか探してみましょう。検索窓があります。それにカタカナで「メッセージ」と入力しEnterをクリックします。
すると「メッセージ」が赤色になって候補となるアクションが検索できました。
⑤システム>ダイアログ>メッセージボックスをダブルクリックします。
すると、中央にメッセージが表示されました。
シーケンスの中に何かエラーマークが残っていますね。何かが設定されていないということでこのままではエラーになってしまいます。
⑥さあ、EXCELを思い出しましょう。メッセージを表示させるのですね?
まず簡単に文章を入れてみましょう。VBAのコードをMsgBox より左をすべてコピーしてみましょう。
VBAでは、MsgBoxがアクションを記述しています。UiPathでのメッセージボックスと同じアクションになるのです。
“今日は” & Date & “です。” & vbCrLf & “今はUiPathを勉強しており、” & Time & “です。”
どうですか?エラーマークは取れましたか?
まだエラーマークが取れません。いったい、VBAとVB.netの記述方法は何が違うのでしょうか?
⑦一旦、ファイルを保存して「ファイルをデバック」から「ファイルを実行」をクリックして実行してみましょう。
下にエラーが表示されています。見てみましょう。「コンパイルエラーが発生」していると記載されています。
⑧では、一旦文字だけにしてみましょう。右のプロパティー画面よりテキスト画面を立ち上げて修正します。
⑨OKをクリックしてみてください。エラーマークが取れました。やはり何か記述のルールが、VBAと違うようです。
今は、文字が表示されていますね? ではもう一度実行してみましょう。
⑩下記のメッセージが表示されます。これは、文字列の表示ができたということです。
ですが、皆さんは文字と日付と時間を接続(つなぐ)しなくてはなりません。
このままでは文字列と日付を接続できないので、エラーになっています。
関数:.NET メソッド入門
「.NET メソッド」とはマイクロソフトが用意した便利な ”関数” です
”関数” とは、使用することで様々な機能を呼び出せる命令文のことです。
今回は、日付(DATE)を文字列に変換する必要があります。下記を見てみましょう。
ですから、
DATA→today.toString
Time→now.toString
として、日付の形式を文字列に変換します。
演算子
VBAでは、「&」を使って文字と関数を接続してきました。
& 演算子を使うことで文字列を結合することができます。また、文字列の変数やセル内の文字列も結合することができました。
UiPathでは、「+」を使います。まず「&」から「+」変えてみましょう。すべて半角を利用します。
UiPathでは、整数値と関数を半角を開けて「+」記述することがルールです。
文字は「”」(ダブルクオテーション)を囲んで使います。これはVBAと同じですね。
「vbCrLf」は、改行する定数です。これも共通で変更することはありません。
⑪早速記述しなおしましょう。
⑫ Dateが青色になっていますが、Timeの色が黒のままです。
関数も表示される形式まで詳細を設定し、変更しましょう。
Date→today.toString(“yyyy/MM/dd”)
Time→now.toString(“HH:mm:ss”)
に変更します。
()の中に具体的な形式を指定しましょう。また出力したい形式によって変更してください。
⑬エラーも消えました。
⑬では、もう一度「ファイルをデバック」から「ファイルを実行」をクリックしてみましょう。動きましたか?
⑭でも、一つだけEXCELと違うと部分があります。
私は同じものを作ってほしいと言いました。じっとEXCELとUiPathの画面を見比べてください。
どこでしょう?わかりましたか?タイトルが違いますよね。UiPathではデフォルトで「メッセージボックス」となっています。
⑮「Microsoft Excel」と修正しましょう。どこから設定できるか、右のプロパティー画面の「共通」に設定できるのです。入力してください。
⑯ファイルを上書きしましょう。そして再度実行(RUN)します。
⑰ ようやく同じアクションができました。VBAからUiPath(VB.net)へ変換できました!
<VBAとUiPath(.NET)の違い>まとめ
VBAとUiPathでは、Microsoftの開発したプログラム言語なのでルールが似ていますが、関数などの記述ルールが少し違うことを理解できたでしょうか?他のプログラミング言語もそれぞれ似ていますが、違いがあることを理解してください。
そしてまずは全体像をつかむことが重要です。それを理解できれば徐々に上達します。
今回は関数を少し学びました。そして、さらに変数、引数、演算、関数など様々に複雑なルールを学ぶことができれば。VBAからUiPathに様々なフローが変換することができるのですから。トライ&エラーで経験を積んでいきましょう。
その上で、皆さんの業務改善にUiPathを活用してみてください。
次回は今回学んだVBAとは少し異なり、VBSを使って実際にUiPathを動かしてみます。
是非ご覧下さい。
オンラインで1ヶ月でできるようになる??『UiPath』を短期間でマスターしたい方はこちら↓
コメントを残す