111860
1
これまでは問題がなかったのですが、はじめてモダンデザインで以下をやってみたところエラーとなってしまったため解決方法をご教示いただけないでしょうか。
やりたいこと
文字列の中から()内の文字列を抽出し変数へ格納
str = str.Remove(0,str.IndexOf(“(”) + 1).Remove(str.IndexOf(“)”)-1)
問題
「一行を書き込み」で上記の右辺を設定すると正しく()内の文字を抽出できているのですが、代入アクティビティを利用すると以下のエラーとなってしまいます。
エラー内容
代入: Expression Activity 型 ‘VisualBasicValue`1’ は、実行するにはコンパイルする必要があります。ワークフローがコンパイルされていることを確認してください。
試したこと
strではなく他の文字列変数を設定してみましたが、変わりませんでした。
UiPath Studio v2022.10.1
Yoichi
(Yoichi)
2
こんにちは
モダンデザインは無関係でWindwosCompatibilityのダブルクォーテーションの問題です。
ダブルクォーテーションを以下の様に "
にして試してもらえますでしょうか? (“
ではなく。)
str = str.Remove(0,str.IndexOf("(") + 1).Remove(str.IndexOf(")")-1)
1 Like
111860
3
確かにダブルクォーテーションを変更したらできました。
そうなると逆に、なぜ一行を書き込みではエラーがなく正しく動くのでしょうか?
Yoichi
(Yoichi)
4
こんにちは
一行書き込みでも同じと思いますよ。ダブルクォーテーションに "
を使用しているのではないでしょうか?
111860
5
再度確認してみましたが、やはり一行に書き込みだと以下のダブルクォーテーションでも問題なく動くのですよね。
str.Remove(0,str.IndexOf(“(”) + 1).Remove(str.IndexOf(“)”)-1)
Yoichi
(Yoichi)
6
こんにちは
手元の環境ではエラーとなりますが...
Windowsレガシープロジェクトではありませんか?
訂正
WriteLine 通りますね。他にもMessageBoxでも大丈夫そうです。
入力する式と、アクティビティに依存するのかもしれません。
1 Like
111860
7
依存関係があるのですね。
当初の課題点は解決できましたので、この度はありがとうございました。
リモート環境での開発のため、いつもと同じ文字を打ったつもりがそうではなかったみたいでキーボードの入力モードも考慮して構築していこうと思います。
system
(system)
Closed
8
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.