• ベストアンサー

UWSCで使うファイルをexcelで作りたい

Wendy02の回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.4

こんにちは。 ここのカテゴリは、あくまでも、Office ですが、なぜ、ここにお聞きになっているのか素朴な疑問があります。UWSC って、一種のキーロガーですね。 もしかして、そのコード自体が、Excelそのものを扱うもののような気がしました。UWSC のヘルプでみて位置を見ると  BTN(LEFT,CLICK,223,72,)  X=223, Y=72, の場所って、Excelですと、数式バーのあたりのようですね。 Excelなら、VBAがあります。 Excelなら、VBAをお使いになったほうが良いのではないでしょうか?外部ツールの最大の欠点は、フレームの中の位置決めが出来ません。可能なのは、外周だけなのですね。Excelは、その状況に合わせて、位置が移動するのです。 もちろん、Excelでないにしても、Excelでドラッグやコピーして、500ブロック書く必要はないとは思います。というよりも、スクリプト系言語の場合は、スクリプトファイルの文字列を多くするのは関心しません。 そのコードは以下のようにループすればよいとは思います。UWSCのヘルプを読みながら書いてみました。Cにも感じは似ているようです。初めて書いてみたので、他の環境で、うまく行くか分かりませんが、間違っていれば、UWSCは通らないと思います。 とりあえず、"111" までにしました。"500" も入れられま。"111"は、三桁の数の検査するための最も少ない数です。 もし、Office だったら、その旨を書いてください。 //SKeysSample.UWS Public arry[9] arry[0] =VK_0 arry[1] =VK_1 arry[2] =VK_2 arry[3] =VK_3 arry[4] =VK_4 arry[5] =VK_5 arry[6] =VK_6 arry[7] =VK_7 arry[8] =VK_8 arry[9] =VK_9 for i = 1 to 111 BTN(LEFT,CLICK,223,72,) SLEEP(0.5) KBD(VK_a,DOWN,) KBD(VK_b,DOWN,) TOKENFIG(i) KBD(VK_TAB,CLICK,) KBD(VK_RETURN,CLICK,) next Procedure TOKENFIG(ai) for j =1 to length(ai) n = copy(ai,j,1) KBD(arry[n],CLICK,) next Fend

masaaki12
質問者

お礼

ありがとうございます。 本当に全くの初心者でしてVBAというものがあるらしいという ぐらいしか知識のないものでご提言ありがとうございます。

関連するQ&A

  • UWSCのスクリプトについて

    画像Dを認識したら画面上に画像Bがあっても 処理Bを実行しない為にはどうしたら良いでしょうか。 -------- while True BTN(LEFT,click,150,10,110)   //処理A Sleep(2) ifb CHKIMG("A.bmp")    x=G_IMG_X            y=G_IMG_Y BTN(left,click,x,y,110) Sleep(1.5) endif Ifb ChkImg("B.bmp")       //処理B BTN(LEFT,click,1120,90,110) Sleep(1) KBD(VK_return,DOWN,30) endif ifb CHKIMG("C.bmp")      //処理C x=G_IMG_X            y=G_IMG_Y BTN(left,click,x,y,110) Sleep(1.5) wend --------

  • (UWSC) エクセルのセルをコピーするには?

    UWSCで、エクセルにあるセルの中身をコピーしたいと 考えています。 getstrを使って、 a = GETSTR(GETID("Microsoft Excel","XLMAIN"),p)  (pは適当な数字) としましたがうまくいかないみたいです。 例えば、i行j列のセルにある文字をコピーするには、 どのようにすればいいのでしょうか? KBD(VK_CTRL,DOWN,32) KBD(VK_C,CLICK,31) KBD(VK_CTRL,UP,40) でもかまいません。

  • USWC初心者です。画像で終了させたいのですが

    USWCをさわり初めたばかりの初心者です。 3ヵ所をクリック+キー押しするだけで、基本ループし、指定画像が出たら終了するようにしたいのですが、終了が上手くできません。延々とループしてしまいます・・・・。 いろいろと検索して、調べながらやっているのですが、1日やってても解決しない状態です。 USWCがおわかりにになる方がいらっしゃいましたら、ご教授いただけますと助かります(>_<) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ //tabキーが押されるとマクロ終了。 While !GetKeyState(vk_tab) WHILE (TRUE) BTN(LEFT,DOWN,1403,796,1154) MMV(1403,796,10) BTN(LEFT,UP,1403,796,125) MMV(1403,796,405) KBD(VK_1,CLICK,2574) KBD(VK_2,CLICK,25210) MMV(1403,797,13574) SLEEP(0.01) Wend Wend IFB (CHKIMG("owari.bmp")=TRUE) THEN x=G_IMG_X + 1213 y=G_IMG_Y + 457 BTN(LEFT,DOWN,1213,457,858) endif Wend Sleep(2) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  • UWSCで ENTERキーを押した時の挙動について

    UWSCで ENTERキーを押した時の挙動を再現したいのですが上手くいきません。 アバター sekiguchi_kou_dayoさん2017/6/2302:40:58 UWSCで ENTERキーを押した時の挙動を再現したいのですが上手くいきません。 ●試したコード IESetData(IE,True,"","innerText=編集",2) sleep(0.5) IESetData(IE,"2017/08/28","TAG=input",9) sleep(0.5) KBD(VK_RETURN) 実際、手でエンターキーを押すのとテキストボックスの日付が更新されるのですが、KBD(VK_RETURN)だと更新がかかりません。 考えられる可能性がございましたらアドバイスを頂けると助かります。宜しくお願い致します。

  • エクセルにて為替の自動売買プログラムを作成しており、キー記録マクロ「U

    エクセルにて為替の自動売買プログラムを作成しており、キー記録マクロ「UWSC」を使用して 指し値を貼りたいと思っております。 エクセルの値を持つことは出来たのですが、それをUWSCでクリックで指定した所に値を代入する事が できません。 下記プログラムの一番下の行です。 だれか教えて欲しいです。 ctrlwin(getid("FX Trading Station 2.0"),max) ACW(GETID("FX Trading Station 2.0"),-7,-7,1036,750,0) BTN(RIGHT,CLICK,172,208,300) ACW(GETID("FX Trading Station 2.0"),-7,-7,1036,750,0) BTN(LEFT,CLICK,230,221,78) ACW(GETID("新規指値の作成","#32770"),328,193,371,342,0) BTN(LEFT,CLICK,504,341,62) KBD(VK_BACK,CLICK,40) KBD(VK_BACK,CLICK,40) KBD(VK_BACK,CLICK,40) KBD(VK_BACK,CLICK,40) KBD(VK_BACK,CLICK,40) KBD(VK_DELETE,CLICK,40) Excel = GETACTIVEOLEOBJ("Excel.Application"); val1 = Excel.ActiveSheet.range("A1").value;

  • UWSC 指定範囲内・及び指定文字の置き換え

    UWSC便利!…だけど難しい…な初心者です。お知恵を貸して下さい BTN(LEFT,CLICK,413,267,125) BTN(LEFT,DOWN,527,253,32) BTN(LEFT,UP,529,253,10) BTN(LEFT,CLICK,530,377,15) BTN(LEFT,CLICK,439,413,47) BTN(LEFT,CLICK,550,515,300) 上記の文字列のうち 1.各行の最後の,から)にある数字を一律50にしたい(上から125,32,10...とある数字です) 2.DOWNとUPのいずれか1つをCLICKに置換し、もう片行を削除したい よろしくお願いします

  • UWSCについて質問です。

    UWSCについて質問です。 特定のボタンを押している間だけループさせるスクリプトを組むにはどうすればいいでしょうか? ボタンを押している間はループされ、ボタンを押していない時は処理が止まる といったようなスクリプトをくみたいのですがどうもうまくいきません。処理させるスクリプト自体は簡単で NUMPAD7を押している間はAの処理 NUMPAD8を押している間はBの処理 NUMPAD9を押している間はCの処理 といった具合にスクリプトを組みたいのですがどうすればよろしいでしょうか? 教えて頂けると助かります。 ちなみに行う処理は以下のとおりです。 処理A BTN(LEFT,CLICK,450,500,10) BTN(VK_3,CLICK,10) while true //7を押している間はここからループ開始 BTN(LEFT,CLICK,400,300,10) BTN(LEFT,CLICK,700,660,10) Wend 処理B while true BTN(LEFT,CLICK,400,300,10) BTN(LEFT,CLICK,700,660,10) Wend 処理C while true BTN(LEFT,CLICK,400,300,10) BTN(LEFT,CLICK,400,660,10) wend

  • UWSCの指定画像チェック

    UWSCを利用して、画面内に指定画像があるか無いかチェックし、あればクリックしたりするスクリプト文を作成したいのですが・・・、うまくいきません; 詳しい方、どうか回答お願いしますm(_ _)m 自分の作ったスクリプト文は下記のとおりです。 ""のところの「A」はフォルダ名で、「neko.bmp」が画像ファイル名です。   IFB CHKIMG(".\A\neko.bmp")     MMV(G_IMG_X,G_IMG_Y)     KBD(VK_CTRL,DOWN)     BTN(LEFT,DOWN,G_IMG_X,G_IMG_Y)     KBD(VK_CTRL,UP)     BTN(LEFT,UP,G_IMG_X,G_IMG_Y)   ENDIF 上記のスクリプト文でUWSCを実行させると、なぜか「エラー NOT Found".\A\neko.bmp"」と出てき、実行してくれません。 画像の問題ではあると思うのですが、ちゃんとuws形式で保存されてますし、画像の方もbmp形式になってるので・・・どこか悪いのかと、思い当たるふしがありません。 悪いところや指摘がございましたらどうか教えてくださいm(_ _)m また、スクリプト文を作れる方がいましたら作成を頼めませんでしょうか。。。 私の希望する、UWSCの実行は下記のとおりです。また、"neko"は画像ファイル名のことです。 "neko"が画面内にあるか無いかチェックし、もしあれば、Ctrlキーを押したまま、"neko"が見つかった座標に左クリック。 この繰り返し。

  • UWSCについて

    ゲームで自動化マクロを作りたいのですが調べてもたのですがうまくいかずよくわからないので教えてください。 やりたい事は ・文字を見つけたらある場所をクリックする ・見つからなかったときは更新ボタンを押し見つかるまで繰り返す この二つなのですが While true  // 繰り返し ここから if GETKEYSTATE(VK_ESC) then exit // Escapeキーでスクリプト停止 Search = "○○" // 検索文字 // ここから あった時 BTN(LEFT,CLICK,232,344,702) BTN(LEFT,DOWN,200,530,593) MMV(200,530,10) BTN(LEFT,UP,200,530,125) MMV(200,530,203) BTN(LEFT,DOWN,245,365,390) MMV(245,365,15) BTN(LEFT,UP,245,365,141) MMV(245,365,203) MMV(245,365,374) MMV(245,365,422) BTN(LEFT,DOWN,193,542,343) MMV(193,542,10) BTN(LEFT,UP,193,542,109) MMV(193,542,94) MMV(193,542,46) MMV(193,542,452) BTN(LEFT,CLICK,245,421,110) BTN(LEFT,CLICK,219,250,230) BTN(LEFT,DOWN,184,245,47) MMV(185,246,78) BTN(LEFT,UP,185,246,63) // ここまで あった時 // ここから なかった時 BTN(LEFT,CLICK,74,60,1217) Search = "○○" // 検索文字 終了 wend //繰り返し ここまで これをすると検索もせずクリックする部分を繰り返してしまいます。 どこを直せばいいのでしょうか? よろしくお願いします。

  • UWSCで変数をキー入力

    UWSCで変数に応じたキー入力をしたいのですが、 どうすればいいのでしょうか? たとえば 変数Aが 1 の場合は 01 とキー入力 変数Aが 25 の場合は 25 とキー入力 という感じで、変数Aは1~84までの値を取ります。 これをSELECT文で試してみたのですが、 1~5くらいまでならうまくいくのですが、 さすがに84まであるとエラーがでてしまいます。 SELECT A CASE 1 KBD(VK_0,CLICK,40) KBD(VK_1,CLICK,40) CASE 2 KBD(VK_0,CLICK,40) KBD(VK_2,CLICK,40) ・ ・ CASE 84 KBD(VK_8,CLICK,40) KBD(VK_4,CLICK,40) SELEND ↑エラー 二桁目と一桁目で分けて入力すればよさそうですが、 どう処理すればいいのかわかりません。 また、仮に変数が文字列を値として取る場合も、 その文字列をそのままキー入力させるにはどうしたらよいでしょうか?