プロが教える店舗&オフィスのセキュリティ対策術

HTAでレコードを条件検索するプログラムを作っています。条件によるレコード検索までは出来ているのですが、その結果の転記が出来ないでおります。

検索を実行すると指定した条件でDBの情報を取得し表示させます。
表示する際にHTA上にレコードの横へチェックボックスが作成されます。

HTA上に表示されるレコードですが、レコードの状態を確認するため必要最低限のものしか表示しないようにしています。
(ウィンドウサイズを出来るだけ小さく作りたかったため)
select * from sheet1 where 陳列コード = 'B01'で検索を行いobjRS(1)、objRS(2)、objRS(3)、objRS(6)、objRS(7)というように全てのフィールドは表示させていません。

HTA上に表示をしExcelへ転記する必要があるものだけを確認したらチェックボックスにチェックをいれます。
転記を押したらHTA上に表示されている「商品C (objRS(2))」と「陳列C (objRS(3))」のフィールドをを元に再度SQLを発行させExcelに転記するというやり方です。
例:select * from sheet1 where 商品コード = 'A0001' and 陳列コード 'B1'のようにです。

要は、チェックボックスにチェックがついたものだけをSQLを発行しエクセルへ転記を行いたいのですがどのようにしたらいいのか・・・
ひょっとしたらHTAのオブジェクトを取得してHTA自分自身を操作??なんておもってやってみたのですが何故かHTAのプログラムだけ結果が返りません。
それかこの考え自体が間違いでしょうか?どなたかヒントで構いませんので力になっていただけないでしょうか?
http://www.google.com/notebook/public/0657752327 …

(似たような質問を昼間書いたのですが自分自身分かりづらかったので再投稿しました 削除が可能になりましたら古いのは消しますのでご了承ください)

A 回答 (1件)

HTAからExcelを操作すべきと思います。


以下、VBScriptと仮定した場合
Dim APL
Dim WKB
Dim WKS
Set APL = CreateObject("Excel.Application") 'Excel起動
Set WKB = APL.Workbooks.Add '新ブックを作る
Set WKS = WKB.WorkSheets(1) '先頭のシート
後は以下のようにセルに仕込む。
WKS.Cells(行, 列).Value = objRS(x) '行、列は1~
データを貼り付けたら可視にする
APL.Visible = True

このExcelシートをどうするかは見ている人の勝手なので、シートを
可視にしたら、処理は終了する。APL以下のオブジェクトはケアする
必要はない。
    • good
    • 0

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