テスト中にもエクセルファイルへ値の書き込み、読み込みを行うことが可能です。
ここでは MS Excel を開かずに操作するキーワードテストとスクリプト、MS Excel を開いて直接操作する例を紹介します。
MS Excel を開かずに操作するオペレーションは Operations パネルの Excel ツリーに存在します。
Add Row
最終行の下に1行追加し、値の追加を行います。空のファイルの場合、下記画像の設定では A1,B1,C1 セルに Value の値が入力されます。
Read Value
指定したセルの値を読み込みます。読み込んだ値は Last Operation Result から使用します。
Write Value
指定したセルに値を入力します。
MS Excel を開く場合は MS Excel の UI を操作して入力を行います。
MS Excel のリボンを確認すると、下の画像のようにリボン全体を一つのオブジェクトとして認識していることが確認できます。グリッドに関してもセルではなく、グリッド全体が一つのオブジェクトとなっています。
リボン内のオブジェクトを取得できるように変更したい場合は、プロジェクト ファイルの [Properties] タブにある [Open Applications] – [MSAA] の項目を選択し、 [Add] ボタンをクリックし、追加される空の項目に「NetUIHWND」と入力してチェックボックスを有効にすることでオブジェクトが取得可能になります。この値はリボンの「WndClass」プロパティの値を使用します。
なお、グリッド内のセルを認識させることはできません。設定後は画像のようにリボン内のオブジェクトが取得できます。
セルへの入力を記録する際は、名前ボックスへ入力するセルを入力して Enter キーで移動してから値を入力することになります。これは、開いたエクセルファイルの初期位置に関わらず記録したとおりの操作を実行するための対応になります。
自動記録の際に Excel ファイルをダブルクリックして開いた場合、開くファイルは TestedApp 内に登録されています。
スクリプトの場合は以下のコードで入力が可能です。以下は Office 365 での例になります。
//Jscript, Office365 function WriteDataToExcel() { var app = Sys.OleObject("Excel.Application"); var book = app.Workbooks.Open("C:\\Book1.xlsx"); var sheet = book.Sheets.Item("シート名"); //(行, 列)で指定します。(2, 1) だと A2 セルになります sheet.Cells.Item(2, 1).Value2 = "入力値"; book.Save(); app.Quit(); }
Excel 2003, Excel 2007 の場合は下記ページのスクリプトになります。
MS Excel への書き込み:
https://support.smartbear.com/viewarticle/20878/
※ Google Chrome で開き、右クリックのコンテキストメニューの「日本語に翻訳(T)」 機能をご使用いただくと、機械翻訳された内容でご覧いただけます。
(投稿日: 2020/8/7)