UWSC 掲 示 板
投稿時に「証明書が不正です」と出る場合には、JavaScriptをオンにしてください
動作不具合での質問の場合には環境(OS,IEのバージョン等)の表記もしてください
題名は質問内容を表したものにしてください
ネットゲーム関係の質問はご遠慮ください

名前
題名
文字色
設定保存削除/編集パス  

文字を自動でクリック NEW / 吾妻
昨日初めて「UWSC」の存在を知ったど素人の質問をお許しください。

自動でyahooにアクセスし
「ヤフオク」という文字を自動でクリック
という作業を自動化したいのですが

IE = CreateOleObj("InternetExplorer.Application")
IE.visible = True
IE.Navigate("http://www.yahoo.co.jp/")

でサイトにアクセスできるのはわかったのですが、
「ヤフオク」という文字(画像ではありません。テキストでリンクされていものです)
を自動でクリックさせる方法で詰まっております。
どうかご教授いただけないでしょうか?

No.348 2014/11/02(Sun) 15:07:31

Re: 文字を自動でクリック NEW / センチ
IELINK( IE, "ヤフオク")

でどうでしょうか?

No.351 2014/11/03(Mon) 01:18:01
PUBLIC変数について NEW / センチ
PUBLIC変数について質問があります。


If FALSE then PUBLIC n = 0

このようなスクリプトを実行すると、以下のようなエラーメッセージが表示されます。

正しくない変数名です: PUBLIC N 1行目: IF FALSE THEN PUBLIC N = 0


また、以下のようなスクリプトを実行すると、逆にエラーメッセージが表示されません。
IfB FALSE
PUBLIC n = 1
MsgBox("")
EndIf
n = n + 1
MsgBox(n)


これは仕様でしょうか?

No.350 2014/11/03(Mon) 01:13:45
フォームの取得 NEW / 初心者を脱したい
EXCEL2010です。

VBAのAuto_openイベントで開かれるユーザフォームを取得したいのですが
できません。

Auto_OpenイベントはUWSCで無視されるようなので、

EX = CreateObejct("Excel.Application")
EX.Visible = True
EX.WorkBooks.Open("Auto_OpenでUseForm1が開くファイル.xlsm")
EX.run("Auto_Open")

と呼び出して、ユーザフォームが開くところまでは確認しています。

ただ、このユーザフォームがGETID関数で取得できないのです。
キャプションの文字列は合っているはずです。


ユーザフォームのプロパティ等の影響で取得できない場合があるのでしょうか?
もしそうであれば、解決策をご教授願いたいです。

No.346 2014/11/02(Sun) 03:04:47

Re: フォームの取得 NEW / 初心者を脱したい
umiumi様
お願いします(_ _)

No.349 2014/11/02(Sun) 22:43:14
マルチモニタ情報について / しろまさ
コントロール パネル\すべてのコントロール パネル項目\ディスプレイ\画面の解像度  で設定確認。
左A X=-1280 Y=0 W=1280 H=1024
右@ X=0 Y=0 W=1366 H=768
右@のほうに「このディスプレイが現在メイン ディスプレイです」と表示されています。

> モニタ番号: モニタ番号を指定 (メインモニタは 0)
とuwscヘルプには書いてありますが、
私の環境では 0 で取得できるのは、左Aのサブディスプレイの情報となっております。

メインモニタはどのように判断されているのでしょうか?
或いはどうすれば、コンパネ情報のメイン ディスプレイを判断して
正しい情報を取得することができるでしょうか?

Print " X=" + MONITOR(0, MON_X) _
  + " Y=" + MONITOR(0, MON_Y) _
  + " W=" + MONITOR(0, MON_WIDTH) _
  + " H=" + MONITOR(0, MON_HEIGHT) _
  + "<#CR>" _
  + " X=" + MONITOR(1, MON_X) _
  + " Y=" + MONITOR(1, MON_Y) _
  + " W=" + MONITOR(1, MON_WIDTH) _
  + " H=" + MONITOR(1, MON_HEIGHT)

No.340 2014/10/30(Thu) 16:27:14

Re: マルチモニタ情報について / umiumi
MONITOR(モニタ番号, MON_PRIMARY)
にて True が返されるのがメインモニタです。これで確認して見てください。
環境により メインモニタ=0 ではないかも?

No.345 2014/10/31(Fri) 22:47:17

Re: マルチモニタ情報について NEW / しろまさ
ご返答ありがとうございます。
月曜になったら会社のPCにて確認致します。

No.347 2014/11/02(Sun) 14:11:18
SELECT に与えた式の値を保持した変数が欲しい。 / しろまさ
umiumiさんにちょっとした要望です。(可能であれば)
例えば、変数が SELDAT として、こんな使い方がしたいです。

Dim List[] = "a","b","c"
SELECT POPUPMENU(List)
  CASE -1; MSGBOX("未選択でした"); Exit
  DEFAULT; MSGBOX(List[SELDAT] + "が選択されました")
SELEND

No.328 2014/10/27(Mon) 17:09:28

Re: SELECT に与えた式の値を保持した変数が欲しい。 / 森
先に変数で受けておくというのではダメなんでしょうか?

Dim List[] = "a","b","c"
SELDAT = POPUPMENU(List)
SELECT SELDAT
  CASE -1; MSGBOX("未選択でした"); Exit
  DEFAULT; MSGBOX(List[SELDAT] + "が選択されました")
SELEND

No.329 2014/10/27(Mon) 21:30:57

Re: SELECT に与えた式の値を保持した変数が欲しい。 / stuncloud
これは僕もときどき欲しいと思うことがあります
>先に変数で受けておくというのではダメなんでしょうか?
まったくもってその通りなんですが、その手間を惜しみたいことがままあるんですよねー…
(なんかダメっぽいことを言ってる自覚は、あります)

SELECT POPUPMENU(List) AS SELDAT
とかだとわかりやすくていいですかね (asで意味通るかな?)

No.332 2014/10/28(Tue) 17:48:42

Re: SELECT に与えた式の値を保持した変数が欲しい。 / しろまさ
> 先に変数で受けておくというのではダメなんでしょうか?
いえ、それが現時点の使用法なのは前提ですよね。

> これは僕もときどき欲しいと思うことがあります
管理上なるべく短く、なるべく見やすく作りたいですよね。大量のModuleをクロス利用させてるとなおさらです。

CASE で値判断してるから内部的にあるんだろうなーという推測で、Public的にして欲しいという要望です。

No.336 2014/10/29(Wed) 09:34:23

Re: SELECT に与えた式の値を保持した変数が欲しい。 / しゅん
// 言語を作成した経験から推測すると、、、ちょっと面倒じゃないかなー、と思ったり。
// 現状では、こんな感じでしょうか。
// 最初関数名をTeeとかにしてましたが、見えない方が良さそうなのでこうしました。

Dim seldat
Dim List[] = "a","b","c"
SELECT '(POPUPMENU(List), seldat)
  CASE -1; MSGBOX("未選択でした"); Exit
  DEFAULT; MSGBOX(List[SELDAT] + "が選択されました")
SELEND


FUNCTION '(r, var o)
  RESULT = r
  o = r
FEND

No.342 2014/10/30(Thu) 23:50:11

Re: SELECT に与えた式の値を保持した変数が欲しい。 / しろまさ
あ、面倒なんですか?ならいいです^^
言語作成の苦労は解りませんし、一行増やせばいいだけですので。
参考コード、ありがとうございました。

No.344 2014/10/31(Fri) 07:58:11
UWSC自体が勝手に落ちる / pink
UWSC自体が勝手に落ちているケースが見られます。
タスクを実行している時・待ちの時、どちらでも発生しました。

■動作環境
・Windows7(Hyper-V仮想環境上)
・UWSC 5.0.2

お心当たり等ありましたらご教授いただけると幸いです。

No.341 2014/10/30(Thu) 22:07:04

Re: UWSC自体が勝手に落ちる / しゅん
落ちるのは、いつの間にかいない、といった感じでしょうか?
最小の再現スクリプトを提示してもらえれば、回答がつくかもしれません。
、、、待ちの時ですと、スクリプトは関係ないかもしれませんが。
どちらかと言うと、同時実行のアプリが落としているとかな気がします。

ネイティブスレッドの実行といったマニアックなスクリプトを組んでいると、よくある話です(笑)

No.343 2014/10/30(Thu) 23:54:49
csvからcsvへデータ移動 / sen
いつもお世話になっております。
下記の様な感じで10列目に文字があれば、バックアップファイルに転記しているのですが、
時々、転記漏れがあるので、十回ループしてます。
どこかに、sleepを入れたら良いのかなと思ったりもしたのですが、うまくいきません。
御教授いただけませんでしょうか?


dim 抽出業者[] = "a","b"
dim 業者名[] = "a業者","b業者"

for x = 0 to 10
 FOR Y = 0 to length(抽出業者[])-1
  Pバックアップ(抽出業者[y],業者名[y])
 next
next

PROCEDURE Pバックアップ(VAR 抽出業者 , VAR 業者名)
 出力 = fopen("D:\bak一覧_" + 業者名 + ".csv", F_READ or F_WRITE)
 入力 = fopen("D:\一覧_" + 業者名 + ".csv", F_READ or F_WRITE)
  dim 表題[] = 業者名 +"施工/"+"得意先","届け先","機種","納品日","備考","社内メモ","受注番号","・","予定日","完了日"
  for 行 = 2 to fget(入力, F_LINECOUNT)
   ifB fget(入力,行,10) <> "" then //工事済みの時
    データ = ""
    for 列 = 1 to 10
     データ = データ + "," + fget(入力,行,列)
    next
    fput(出力, copy(データ, 2) + ",,", 0) // データを1行追加
    FDELLINE(入力,行) //転記分を削除
   ENDIF
  NEXT
 fclose(入力)
 fclose(出力)
fend

No.335 2014/10/29(Wed) 00:33:36

Re: csvからcsvへデータ移動 / 森
> FDELLINE(入力,行) //転記分を削除
をすることによって、以降の行が繰り上げになり、
削除した次行の処理が飛んでしまっているのが原因ですね。

▼分かりやすく再現

data.csv
-------------------------
1
2
3
4
5
6

test.uws
-------------------------
f = fopen("data.csv",F_READ or F_WRITE)
for i = 1 to fget(f,F_LINECOUNT)
  msgbox(fget(f,i))
  fdelline(f,i)
next
fclose(f)

No.337 2014/10/29(Wed) 09:56:59

Re: csvからcsvへデータ移動 / Liners
>削除した次行の処理が飛んでしまっているのが原因ですね。
確かに。では結局どうすればよいのか?…移動なのだから削除自体が悪い訳でなく行を移動しなければ良い。

データがないので確認できないが、単純にifbをwhileに置換える。

ifB fget(入力,行,10) <> "" then  -> while fget(入力,行,10) <> ""
ENDIF -> wend

No.338 2014/10/29(Wed) 21:24:10

Re: csvからcsvへデータ移動 / しろまさ
> では結局どうすればよいのか?
終わりから回す。出力は常に1行目に。

for 行 = fget(入力, F_LINECOUNT) to 2 step -1
 ・
    fput(出力, copy(データ, 2) + ",,", 1, F_INSERT) // データを1行目に挿入


話は変わりますが、これ↓だと1列目の前にも , が付きますので処理が増えてますね。
    データ = ""
    for 列 = 1 to 10
     データ = データ + "," + fget(入力,行,列)
    next
・・・・・・・copy(データ, 2)・・・

ループ取得と文字列結合は処理を遅くする(uwscの不得意分野)ので、

1行全て取得するにはこれ↓
FGet(入力, 行)

10桁以上あって10桁目まで取得したいならこれ↓
Copy(FGet(入力, 行), 1, Pos(",", FGet(入力, 行), 10) - 1)

な感じで取得すると効率いいですよ。

No.339 2014/10/30(Thu) 09:03:22
リストボックスの選択 / Nagatani
いつもお世話になります。
楽天市場にある「リストボックス」の並び替えですが「感想が多い」「商品評価が高い」「価格が安い」「価格が高い」とあるうち、「価格が安い」を選択したいのですが下記の式では繰り返し処理をした場合、「感想が多い」と「価格が安い」を交互に選択されてしまいます。

IESetData(IE,"価格が安い","","id=sortSelectDropBox")

2回に1回IESETDATAを考えましたが「価格が安い」「感想が多い」もどちらから始まるか判断できず困っています。また、プロ版のRecIEを使いましたが同様になります。
これからどのフラグが立っているかを判断する方法を考えますが何かアドバイスがあればよろしくお願いいたします。

No.330 2014/10/28(Tue) 00:01:31

Re: リストボックスの選択 / Nagatani
お疲れ様です!ダウンロードしたBODYを読んでいたら
IESetdata(IE,"価格が安い","","Id=sortSelectDropBox")のidが
id="sortSelectDropBoxになっていました!
そこで、id=<#dbl>sortSelectDropBoxに変えたところ安定しました!
プロ版のrecを使って上記式で対応したのですが頭についてた、ACC??の
意味がわからず勝手に外した罰でしょうか?
ありがとうございました!

No.331 2014/10/28(Tue) 11:32:46

Re: リストボックスの選択 / Nagatani
やはり甘かったようです!
IESetdata(IE,"価格が安い","","Id=sortSelectDropBox")でも
Assert(IESetData(IE,"価格が安い","","id=sortSelectDropBox"),17)でも
症状は同じで「価格が安い」になっているときは「感想が多い」を選択して
しまいます。逆に「感想が多い」になっていれば「価格が安い」になります。

環境は「Windows7」「Pro5.0.3.0」「IE11.0.13」

アドバイスよろしくお願いいたします。

No.333 2014/10/28(Tue) 23:09:25

Re: リストボックスの選択 / Nagatani
お疲れ様です。最終的には下記のようにDropBoxに何がセットされているかを見て
Assert(IESetData(IE,"価格が安い","","id=sortSelectDropBox"),17)を使うかどうか
判断いたしました。
//価格が安いを選択
HEAD = BETWEENSTR(BODY,"selected=<#DBL><#DBL>>","</option>")
IF HEAD <> "価格が安い" THEN
Assert(IESetData(IE,"価格が安い","","id=sortSelectDropBox"),17) // SELECT-ONE
BusyWait(IE)
SLEEP(2)
ENDIF
ほかにいい方法があればアドバイスをよろしくお願いいたします。

No.334 2014/10/29(Wed) 00:07:23
Excelのハイパーリンクについて / わーみぃ
umiumi様
以前から使っていた以下のハイパーリンク挿入の記述について
uwscのバージョン5以降はCOMエラーが出るようになりました。
バージョン4.9cではエラーが出ません。

With Excel.Worksheets("sheet1")
  .Hyperlinks.Add(.Cells(1, 6),"http://abc.com/"+ディレクトリ,"","","メモ")
EndWith

4.9cで動かそうと思いましたが、せっかくバージョン5で正常に動くようになったTHREADもありますので
できるならばバージョン5でハイパーリンクを挿入したいです。

excel2013 Windows8.1 環境です。
ご確認宜しくお願いします。

No.322 2014/10/26(Sun) 14:04:47

Re: Excelのハイパーリンクについて / umiumi
確認しました。
対処します。

空文字の代わりに EMPTYPARAM を指定してください。
, EMPTYPARAM, EMPTYPARAM, "メモ")

No.325 2014/10/26(Sun) 23:56:02

Re: Excelのハイパーリンクについて / わーみぃ
umiumi様
ありがとうございます。
EMPTYPARAMを指定することで、問題なく動作するようになりました。

No.327 2014/10/27(Mon) 14:30:56
Excel が開かない / お辞儀猫
UWSC Ver5.0.3、 Pro版 にて作成したEXEを実行すると
Vista / 7 にて Not Found や EXCEL cannot be started が以下の一文で出ます。

Excel = XLOPEN("C:\TEMP\○○○.xls")
※○○○.xls は英語と日本語の混ざったファイル名です。

開発環境であった私のXP / 8 では起きませんでしたし、
Vista / 7 のPCを使用している方にはExcelも入っているし、フォルダ構成に問題はありません。何かご存じの方あれば教えてください。

No.326 2014/10/27(Mon) 01:34:38


 過去ログ(〜2014/8/20)・検索ツール


以下のフォームに記事No.と投稿時のパスワードを入力すれば
投稿後に記事の編集や削除が行えます。
88/200件 [ ページ : 1 2 3 4 5 6 7 8 9 >> ]