Excel 空白セルの判定がうまくいかない

こんにちは。UWSCで、Excelのセルにデータが入っているか判定するプログラムを書こうと思っています。 ExcelのSheet1のA1に何らかの文字列が入っていれば、処理を行うといった事をしたいのですが、下記のコードだとうまく動きません。 A1に文字列が入っていないにも関わらず、IF文がTRUEになってしまい、DO SOMETHINGを実行してしまいます。 下記のコードを試したのですが、ダメでした。 ☓ LENGTH(.Range(“A” + “1″)) “” ☓ LENGTH(.Range(“A” + “1″)) 0 ☓ .Range(“A” + “1″) “” ☓ .Range(“A” + “1″) EMPTY ☓ .Range(“A” + “1″) NOTHING ☓ .Range(“A” + “1″) NULL EXCEL = GETACTIVEOLEOBJ(“Excel.Application”) WB = EXCEL.WorkBooks(“myFile.xlsx”) With WB.WorkSheets(“sheet1″) if LENGTH(.Range(“A” + “1″)) “” then //Do SOMETHING endif EndWith どのようにすれば解決できますでしょうか?UWSCの問題というよりは、Excelの問題のような気もしますが・・・ お手数おかけします。よろしくお願いいたします。

タグ

2016年1月15日 | コメントは受け付けていません。 |

カテゴリー:掲示板

アマゾンの検索結果の並べ替え条件の変更の仕方について

アマゾンの検索結果の並べ替え条件を変えたいのですが、うまく出来ずに困っています。

例)URL : http://www.amazon.co.jp/s/ref=sr_pg_1?rh=n%3A561958%2Ck%3Advd&keywords=dvd&ie=UTF8&qid=1452480712&lo=dvd

処理としては、下記のことをしています。

//サンプルコードここから
IE = CreateOLEObj(“InternetExplorer.Application”)

IE.Visible = True

IE.Navigate(“http://www.amazon.co.jp/s/ref=sr_pg_1?rh=n%3A561958%2Ck%3Advd&keywords=dvd&ie=UTF8&qid=1452480712&lo=dvd”)

BusyWait(IE)

doc = IE.Document

for k=0 to doc.forms(3).elements.length-1
    ifb (pos(“select-one”,doc.forms(3).elements(k).type)0)
        break
    endif
next

//おすすめ順を選択したい場合
doc.forms(3).elements(k).selectedIndex = 1
doc.forms(3).submit

Procedure BusyWait(ie)
Sleep(0.5); repeat; Sleep(0.2); until (! ie.busy) and (ie.readyState=4); Sleep(0.5)
Fend
//サンプルコードここまで

上記の処理で、並べ替え条件の表示は「おすすめ順」に変わるのですが、実際にはおすすめ順には並べ替えがされません。
doc.forms(3).submit は、あってもなくても結果は変わりませんでした。
何か処理が足りないのだと思うのですが、そこが分かりません。

OSはWindows7 Professional 64bit、IEのバージョンは11.0.9600.18124です。

どなたか分かる方がいらっしゃったら、ご教示いただければ幸いです。

よろしくお願いいたします。

タグ

2016年1月11日 | コメント/トラックバック(1) |

カテゴリー:掲示板

このページの先頭へ