gorby
(RPA Ninja)
November 26, 2025, 12:27pm
1
こんばんは
UiPath Studio 2024.10 enterprise editionでクラシックデザインアクティビティで開発しています。
1.やりたいこと
ForEachRowアクティビティの中で、データテーブルdtの行Rowを読んで下記の構文でifアクティビティで連続して条件分岐しています。
if Row(“都道府県”).ToString = “秋田県” AndAlso Row(“判定”).ToString = “○”
Then ・・・・
if Row(“都道府県”).ToString = “アオモリケン” AndAlso Row(“判定”).ToString = “○”
Then ・・・・
2.悩んでいること
Row(“都道府県”).ToStringが全角文字の場合は、正常に分岐できます(Thenに処理が渡る)が、Row(“都道府県”).ToStringが半角カナの場合はElseに処理が流れて分岐できないように見えます。
この推測が正しい場合、下記の構文で半角カナを全角カナに変換すれば、正常に分岐できるでしょうか?
クラシックの場合でもInvoke Methodでregisterproviderを事前に呼び出す必要はありますか?
str_全角カナ=StrConv(str_半角カナ,VbStrConv.Wide, &H411)
Yoichi
(Yoichi)
November 26, 2025, 1:01pm
2
gorby:
ForEachRowアクティビティの中で、データテーブルdtの行を読んで下記の構文でifアクティビティで連続して条件分岐しています。
if dt(“都道府県”).ToString = “秋田県” AndAlso dt(“判定”).ToString = “○”
Then ・・・・
if dt(“都道府県”).ToString = “アオモリケン” AndAlso dt(“判定”).ToString = “○”
Then ・・・・
2.悩んでいること
dt(“都道府県”).ToStringが全角文字の場合は、正常に分岐できます(Thenに処理が渡る)が、dt(“都道府県”).ToStringが半角カナの場合はElseに処理が流れて分岐できないように見えます。
上記ですと “アオモリケン”は半角なので、半角時にThenに流れるように見えますが、逆に流れていますか?
いずれにしても半角文字と全角文字は異なる文字なので、単純なリテラルでの等値比較では、どちらか一方にしか「一致」にはなりません。
この推測が正しい場合、下記の構文で半角カナを全角カナに変換すれば、正常に分岐できるでしょうか?
クラシックの場合でもInvoke Methodでregisterproviderを事前に呼び出す必要はありますか?
str_全角カナ=StrConv(str_半角カナ,VbStrConv.Wide, &H411)
クラシックか否かは関係ありません。プロジェクトの種類がWindowsプロジェクトであれば必要になり、Windowsレガシーですと不要かと思います。
gorby
(RPA Ninja)
November 26, 2025, 4:33pm
3
失礼しました。dtはRowのtypoでした。質問を修正しました。半角カナが正常に分岐できない原因の可能性はありますか? 文字コードに詳しくはないですが、半角カナはコンピュータが扱いにくそうなので疑った次第です。
Yoichi
(Yoichi)
November 26, 2025, 11:35pm
4
.net / UiPathの処理系ではunicodeが採用されおり全角半角の概念はほぼありませんので、関係ないと思います。全角文字、半角文字それぞれ独立した別の文字です。一致しないのであれば、違う文字が含まれている等が要因かと思います。
system
(system)
Closed
November 29, 2025, 11:36pm
5
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.