Excel関係

【UiPath】Excelの列番号をアルファベットに変換する

エクセルの列番号をアルファベットに変換する方法を紹介します。

1⇒A

10⇒J

100⇒CV

…という感じです。

使用アクティビティ

・「Do While」

・「Assign」

・「Message Box」

手順

変数i(int32型)に列番号を指定します。

今回は50を指定します。50はAXに変換されます。

次に「Do While」アクティビティの中に、「Assign」アクティビティを3つ用意します。

上から、

①「Assign」
i = i -1

②「Assign」
alphabet = Chr(i Mod 26 + 65) & alphabet
※alphabetはString型変数

③「Assign」
i = i \ 26

条件式は

i > 0

と設定します。

「Message Box」に変数alphabetを表示します。

変換結果

以上です。

 

 

 

【UiPath】Excelマクロに引数を渡す方法

UiPathからExcelマクロに引数を渡す方法を説明します。

UiPathで作成した文字列の変数を、Excelマクロに渡しメッセージボックスに表示します。

Excelマクロ設定

String型の引数を1つ受け取り、その引数をメッセージボックスに表示するマクロを作成します。

<ファイル名> :UipathTest.xlsm
<マクロ名>  :test
<引数>    :uipathMsg

VBA(サンプルコード)
Sub test(ByVal uipathMsg As String)
  MsgBox uipathMsg
End Sub

UiPath Studio設定

メッセージの設定

マクロで表示するメッセージを変数に設定します。

Excel application scope

「Excel application scope」にExcelマクロのファイルパスを指定します。

Execute macro

「Excel application scope」内に「Execute macro」をドラッグ&ドロップします。
「Execute macro」のプロパティ[Macro Name]にマクロ名(引数)を入力します。

※ダブルクォーテーションの数に注意!!

プロパティは[Macro Name]のみ設定です。

UiPathの設定は以上です。

実行結果