Розмір відео: 1280 X 720853 X 480640 X 360
Показувати елементи керування програвачем
Автоматичне відтворення
Автоповтор
素晴らしいです。UIAutomationは知らなかったです。これなら簡単に要素に対して入力できますね。ひとつ課題として今回のコードだとあくまでフォームに入力が基本ですが、逆に要素を把握して指定してその要素のテキストをエクセルのセルに転記したいんですが、この機能の中で一部組み込みたいのですがどうしたらできますでしょうか?
嬉しいお言葉ありがとうございます。前提のお話として、現在(2024.5月)、UIAutomationを用いて自動操作するコードはver.2.0まで公開しています。ver.2.0のコードでは、要素に対して「何を実行するか」を指定することができます。「要素の名前」を取得したい場合は、ManipulateUIElementの第八引数に「Text」と入力し、第九引数に「文字型の変数」を入れて実行してください。そうすると、この第九引数の変数に要素名が返ってくるようになっています。要素名が取得できれば、あとは、エクセルのセルに変数を代入するコードを記載すれば、やりたいことが実現できると思います。
バージョン2.0だと引数がわかりにくいですね。なんとかテキストボックスに入れる方はできたのですが、テキストを取得して変数に入れるとエラーになります。多分引数と変数の入れ方がおかしいのだと思いますけど。Call ManipulateUIElement("Challenge", _この下がうまく動きません "このチャレンジの概要", "Text", "1st", "Increment", _ "Edit", "1st", _ "Text", ss) Worksheets("Sheet1").Cells(1.1) = ss
すいません。ここまではうまくいきました。お手数をおかけしますがよろしくお願いします。可能であれば引数の入れ方のいくつかのサンプルがあると非常にわかりやすいと思うのですがしかしこれわかりやすくなればとてつもない価値のあるコードだと思い感動してます。Call ManipulateUIElement("Challenge", _ "住所", "Text", "1st", "Increment", _ "Edit", "1st", _ "SetValue", "123")
下記のコードで動作しました。ただこの内容だとRPAチャレンジのサイトで実施するとNochangeで含むで要素を取得できるみたいですが、2の名前のあとの第六引数で1stや2stをセットしても次の文字列などの要素を所得できません.Nochange以外できない理由はなんでしょうかDim s As StringDim sx As String’1Call ManipulateUIElement("Challenge", _ "Excelファイル", "Text", "1st", "Nochange", _ "Edit", "1st", _ "Text", s) Worksheets("Sheet1").Range("A2") = s ’2 Call ManipulateUIElement("Challenge", _ "名前", "Text", "1st", "Increment", _ "Edit", "2st", _ "Text", sx) Worksheets("Sheet1").Range("A3") = sx
何度も質問してすいませんが、要素のテキストの取得はやり方わかりました。結構手間取りましたが、しかしこれ本当にすごいです。自分はseleniumでやっていたのですが、環境により使えないの大変困っていたので助かりました。ただ一般の事務職の人などはすごすぎて価値がイメージが全くできなさそうなのがくやしいですあと前の質問は解決したので大丈夫ですが、internet explorerでもこれ同じように動作するのでしょうか?
私も最近uiautomaisionを知ったのですが、そこらのぼったくりRPAソフトと同等かむしろそれ以上の機能をExcelだけで実現できるのに、何故か知名度が低いというか、不遇な気がやはり使いこなせる人が少ないからでしょうか
素晴らしいです。UIAutomationは知らなかったです。これなら簡単に要素に対して入力できますね。ひとつ課題として今回のコードだとあくまでフォームに入力が基本ですが、逆に要素を把握して指定してその要素のテキストをエクセルのセルに転記したいんですが、この機能の中で一部組み込みたいのですがどうしたらできますでしょうか?
嬉しいお言葉ありがとうございます。
前提のお話として、現在(2024.5月)、UIAutomationを用いて自動操作するコードはver.2.0まで公開しています。
ver.2.0のコードでは、要素に対して「何を実行するか」を指定することができます。「要素の名前」を取得したい場合は、ManipulateUIElementの第八引数に「Text」と入力し、第九引数に「文字型の変数」を入れて実行してください。そうすると、この第九引数の変数に要素名が返ってくるようになっています。
要素名が取得できれば、あとは、エクセルのセルに変数を代入するコードを記載すれば、やりたいことが実現できると思います。
バージョン2.0だと引数がわかりにくいですね。なんとかテキストボックスに入れる方はできたのですが、テキストを取得して変数に入れるとエラーになります。多分引数と変数の入れ方がおかしいのだと思いますけど。
Call ManipulateUIElement("Challenge", _
この下がうまく動きません
"このチャレンジの概要", "Text", "1st", "Increment", _
"Edit", "1st", _
"Text", ss)
Worksheets("Sheet1").Cells(1.1) = ss
すいません。ここまではうまくいきました。お手数をおかけしますがよろしくお願いします。
可能であれば引数の入れ方のいくつかのサンプルがあると非常にわかりやすいと思うのですが
しかしこれわかりやすくなればとてつもない価値のあるコードだと思い感動してます。
Call ManipulateUIElement("Challenge", _
"住所", "Text", "1st", "Increment", _
"Edit", "1st", _
"SetValue", "123")
下記のコードで動作しました。ただこの内容だとRPAチャレンジのサイトで実施するとNochangeで含むで要素を取得できるみたいですが、2の名前のあとの第六引数で1stや2stをセットしても次の文字列などの要素を所得できません.Nochange以外できない理由はなんでしょうか
Dim s As String
Dim sx As String
’1
Call ManipulateUIElement("Challenge", _
"Excelファイル", "Text", "1st", "Nochange", _
"Edit", "1st", _
"Text", s)
Worksheets("Sheet1").Range("A2") = s
’2
Call ManipulateUIElement("Challenge", _
"名前", "Text", "1st", "Increment", _
"Edit", "2st", _
"Text", sx)
Worksheets("Sheet1").Range("A3") = sx
何度も質問してすいませんが、要素のテキストの取得はやり方わかりました。結構手間取りましたが、しかしこれ本当にすごいです。
自分はseleniumでやっていたのですが、環境により使えないの大変困っていたので助かりました。
ただ一般の事務職の人などはすごすぎて価値がイメージが全くできなさそうなのがくやしいです
あと前の質問は解決したので大丈夫ですが、internet explorerでもこれ同じように動作するのでしょうか?
私も最近uiautomaisionを知ったのですが、そこらのぼったくりRPAソフトと同等かむしろそれ以上の機能をExcelだけで実現できるのに、何故か知名度が低いというか、不遇な気が
やはり使いこなせる人が少ないからでしょうか