プロが教えるわが家の防犯対策術!

あるWEBシステムで、個人IDをブラウザ上のフィールドに入力して検索ボタンを押すと検索結果を表示、エクスポートボタンを押すとCSVで保存する仕組みがあるとします。

UWSCにて、
エクセルのA列に並んだ個人IDの一番上をコピーし、
WEBシステムに貼り付けてCSV保存という動作を、上から順に個人IDが無くなるまで繰り返すという作業をさせたいのですが、
次の個人IDが無いという判断のさせ方が分かりません。
詳しい方教えてください。

A 回答 (5件)

> 何故か、LENGTH(hoge)=2 になるんです。

(0でない)

それ、言われてみて気づきました。空のセルでも改行文字CRLFは入れておかないと、2行以上コピーした場合にデータの数が合わなくなっちゃいますよね…。もし改行文字がなければ、セルA1,A2をコピーしたときにどっちかのセルが空だとデータは1個だけになるため、データの数が合いません。しかもデータが1個だと、A1,A2どっちが空だったかもわかりません。これはまずい。

だからLENGTH関数で取得した文字数は、セルに入っている文字数+2になります。回答前に気づかなかったのはうかつだった!
    • good
    • 0
この回答へのお礼

いえいえ問題ありません。わざわざ返信ありがとうございます。

お礼日時:2018/10/02 18:33

> nullだったらメッセージを出して終了


> nullじゃなかったらカーソルキー↓を押下して次の処理に進む、

それだったらこんな感じでしょう。

hoge=GETSTR(0)

IFB LENGTH(hoge)=0
MSGBOX("個人IDを全て読み終えました。処理を終了します。")
EXITEXIT
ENDIF

KBD(VK_DOWN,CLICK,50) //カーソル↓を押す

…以降、次の処理…
    • good
    • 0
この回答へのお礼

ありがとうございます。できました。

ちなみに、エクセルのセルをCtrl+Vでコピーすると
何故か、LENGTH(hoge)=2 になるんです。(0でない)
なので、LENGTH(hoge)>2 の条件を満たす間ループさせる事でうまく行きました。

お礼日時:2018/09/28 11:27

UWSCのGETSTR関数で、クリップボードの中身を調べるとか。

hoge=GETSTR(0) ってやるとクリップボードからテキストをコピーできるから、それでhogeが空文字列ならばコピー元が空ってことになります。
    • good
    • 0
この回答へのお礼

ありがとうございます。
教えていただいた関数で取得できました!

nullだったらメッセージを出して終了
nullじゃなかったらカーソルキー↓を押下して次の処理に進む、
という風にしたかったらどうすればいいですか?
(「次の処理」というのは完成してます)

お礼日時:2018/09/27 14:52

MATCH関数でA列の値を検索してエラーが返ってきたら同じもの(ID)はないと判断。



…で良いような気がする。
    • good
    • 0
この回答へのお礼

それはExcel上での話ですよね?
UWSC上からExcelのエラーを検知できないですよね・・・

お礼日時:2018/09/26 17:00

UWSCの画像認識でいけませんか


コピーする前の選択した状態で拾える場所がありそうです。
実行してないので憶測です。
ご自身で試行した内容も記載したほうが良いと思います。
    • good
    • 0
この回答へのお礼

解決方法が思い当たらずまだ試行してません。

セルの番地で言うと、A2、A3・・・・A10に個人IDが入っておりそれ以下は空のセルになります。
ですが、最下部がA10とは限らず、A5の時もあればA50の時もありそうなのです。

お礼日時:2018/09/26 17:03

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています