- ベストアンサー
UWSCで指定文字があった場合置換
仕事でデータ入力をする機会ができたのですが、 1月5日電気代 1月5日水道代 1月5日ガス代 ↑上記の文章を発見した場合 1月6日電気代 1月6日水道代 1月6日ガス代 と自動で置換したいのですが どうもうまくいきません 仮にメモ帳でやるとしたらどういったスクリプトになるのか どなたかご教授願います
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
解答提示は、やめておきます。 > どうもうまくいきません 試したスクリプトを提示することが望ましいです。 > 上記の文章を発見した場合 pos()関数 > 自動で置換 chgmoj()関数 ※pos()関数は省いて、chgmoj()関数だけでもできると思います。
その他の回答 (1)
- momoracci
- ベストアンサー率51% (14/27)
// CHGMOJ()関数の第一引数が違います。UWSCのヘルプ(UWSC.CHM)をご自身で確認なさってください。 ///// TEXTBLOCK 変換前の文章 1月5日電気代 1月5日水道代 1月5日ガス代 ENDTEXTBLOCK 変換後の文章=CHGMOJ(変換前の文章, "1月5日", "1月6日") MSGBOX(変換前の文章+"<#CR><#CR>"+変換後の文章)
お礼
ご回答ありがとうございます ご指摘を参考に改良しましたら、なんとできました! 本当にありがとうございます 以下、私なりのスクリプトになります For i = 0 to 100 id = GETID("新規テキスト") if id > 0 then break Sleep(0.1) Next idd = GETSTR(id) ic=CHGMOJ(idd, "1月5日", "1月6日") SCKEY(id, VK_CTRL, A) Sleep(0.1) KBD(VK_BACK,CLICK,40) Sleep(0.1) SendStr(id,ic) どうも置換がうまくできなかったので 一度消して値を送信してみました ここから、教えていただいたURLを参考に 実務に使える形に変えていこうと思います 貴重なお時間割いていただきありがとうございました。
お礼
ご回答ありがとうございます 解答を参考に試行錯誤してみたのですが、全くだめでした 以下プログラムになります For i = 0 to 50 id = GETID("新規テキスト") if id > 0 then break Sleep(0.1) Next idd = CHGMOJ(id,"1月5日電気代","1月6日電気代") ic=getstr(idd) Sleep(0.1) SendStr(id,ic) //終了 これでiddに変換された戻り値がくるかと思ったのですが 結果は原文が一度やるごとに倍になっていきます もしお時間空きましたら、ヒントでもいいので教えていただけたらうれしいです