🤖

UiPath でよく使うけど忘れるあれこれ

2024/01/20に公開

いつも調べるので自分自身への備忘がてら。随時追加更新していきます。
UiPath というより VB.Net の仕様についての内容も多いです( C# モードの話は基本的にありません)。

ワークフローを途中で終了させる

開発中によく差し込みたくなる。 System.Activities.Statements.TerminateWorkflow アクティビティを使えば良い。ただ、アクティビティ検索では「中断」「終了」「完了」などではヒットしない。 Terminate で検索するのが正解。

参考

文字列連結

& 演算子でOK。 Excel と一緒。

"今日は" & DateTime.Now.ToString("dd") & "日です。"

参考

特定の文字列が含まれているか判定

"Hello, Guys".Contains("ell") '=> True

数値の0パディング(0埋め)

Int32 型の ToString メソッドでいける。 ToString メソッドはフォーマット関数を兼ねているようで便利。

123.ToString("00000") '=> "00123"

あるいはString型の PadLeft メソッドによる以下も同じ結果。

123.ToString().PadLeft(5,"0"c)
'or
"123".PadLeft(5,"0"c)

等価比較

=== どちらでもよい。なのでどちらかに統一してるとよい。

論理演算子の短絡評価 (short-circuit)

よくある言語の &&|| のつもりなら AndAlsoOrElse を使う。

  • And の短絡評価バージョン → AndAlso
    -Or の短絡評価バージョン → OrElse
10 == 10 And Foo      ' Foo も評価される
10 == 10 AndAlso Foo  ' Foo は評価されない

10 != 10 Or Foo       ' Foo も評価される
10 != 10 OrElse Foo   ' Foo は評価されない

参考

全角/半角 変換

StrConv 関数。

全角 → 半角

StrConv("ABC123", VbStrConv.Narrow, 1041) '=> ABC123

半角 → 全角

StrConv("ABC123", VbStrConv.Wide, 1041) '=> ABC123

参考

モダンアクティビティを表示

例えば「クリック」アクティビティでも2種類存在する。

  • UiPath.Core.Activities.Click
  • UiPath.UIAutomationNext.Activities.NClick

日本語のアクティビティ名は両方とも「クリック」で同じ(アイコンは微妙に違う)だが、後者のニトリ製品[1]みたいなほうはタイムアウトがミリ秒ではなく秒指定だったり微妙に違う。

モダン・アクティビティはデフォルトで非表示になっていることがある。その場合は検索してもヒットしない。

「アクティビティ」 → 「漏斗アイコン」 → 「モダン アクティビティを表示」 が有効になっているか確認。

モダンアクティビティはできるだけ変数を使わずにより GUI だけで完結できるように設計されていたり、新しい機能の強化もモダンアクティビティで活発に行われているようだが、使って見た感じでは一概にモダンアクティビティを使うのが良いというわけでもない、単純な強化版アクティビティという感じでもない。

参考

変数名に日本語は使えるけど数字から始まる名前はNG

プロフェッショナルなプログラマではないビジネスパーソンのほうがユーザが多いゆえか日本語の変数名もよく見かけます。なんなら日本語のほうが意図を明確にしやすいので推奨されることもあるくらいです。

しかし、半角数字から始まる名前は使えません。

参考

脚注
  1. https://www.nitori-net.jp/ec/feature/nclick/ ↩︎

Discussion