Excelファイルの相互作用
SenseTalkを使用すると、Microsoft Excel形式で保存されたデータにアクセスできます。 このセクションの関数を使用して、SenseTalkは個々のセルの値から直接データを読み取ります。
Excelのスプレッドシートファイルに値を更新して書き戻すことができ、セル内のプロパティ(テキストの色やフォントサイズなど)を更新できます。 例えば、SenseTalkを設定してスプレッドシートからデータを読み取り、このデータを使用してテストを実行し、その結果をスプレッドシートに書き戻すことができます。
SenseTalkでExcelファイルを扱う
これらのオブジェクトは Excel ワークブック ファイルのそれぞれの部分への参照として機能するため、これらのオブジェクトのいずれかのプロパティまたはセルの値を変更すると、ワークブック自体の対応する側面が変更されます。これらのオブジェクトのいずれかをパラメーターとしてコマンドまたは関数に渡すとき、呼び出されたハンドラーからワークブックにアクセスする場合は、オブジェクトを参照によって明示的に渡す必要があります。それ以外の場合、SenseTalk はオブジェクトのコピーを作成し、呼び出されたハンドラーによって受信された値はワークブックへの接続を失います。
ここで説明する機能は、SenseTalkのデータベース機能とは異なります。スプレッドシートの内容にデータベースとしてアクセスするには、"Excel をデータベースとして使用する"を参照してください。
ファイル参照
ベスト プラクティスとして、SenseTalk スクリプト内で参照されるファイルはすべて、スイート ウィンドウのリソース ペインから Eggplant Functional に追加する必要があります。このメソッドは、指定されたスイートのスイート ディレクトリ内の Resources ディレクトリにファイルを保存します。 SenseTalk はローカル ファイル システム上の別の場所に保存されているファイルにアクセスできますが、Resources ディレクトリを使用すると追加機能が提供されます。詳細については、リソース ペイン を参照してください。
Excel ファイルへの複数の接続の作成
Eggplant Functional では Excel ファイルへの接続を複数作成できますが、そうすると問題やエラーが発生する可能性があります。たとえば、workbook (このページで説明) と database (ここで説明) の両方として Excel ファイルに接続すると、Eggplant Functional は"InternalWorkbookError - データ ソースが必要ですが、ワークブックの値がありません"のようなエラー メッセージを返す可能性があります。このエラーは、接続の 1 つを閉じることで修正できます。
ファイルから直接データを読み取るか、またはデータをファイルに書き込むには、次の関数とプロパティを使用します:
Workbook Function はワークブック ファイルを識別し、他の関数を使用してそのファイルにアクセスするための開始点を提供します。
Workbook() Functionはワークブックファイルを識別し、他の関数を使用してそれにアクセスするための起点を提供します。
Cell Functionはワークシート内の特定のセルの値とプロパティへのアクセスを提供します。
CellRange Functionは、ワークシートの行、列、または矩形領域の範囲内の複数のセルに素早くアクセスできるようにします。
Workbook 関数
Behavior: Workbook 関数は、Excelスプレッドシートへの直接アクセスの開始点です。この関数はパラメータとしてExcelファイルへのパス名を受け取り、.xlsx ファイル拡張子を持つExcelファイルを参照し、Workbook 参照を 返します。
Parameters: Excelファイルへのパス名。
構文:
Workbook( ExcelFileName )
例:
set MyExcelFile to Workbook(ResourcePath("TestCases.xlsx")) //MyExcelFile を TestCases.xlsx Excel ファイルの参照変数として設定します
例:
set MyExcelFile to Workbook("TestCases.xlsx") // TestCases.xlsx Excelファイルへの参照変数としてMyExcelFileを設定する。workbook() 関数はデフォルトのスイートディレクトリ内のTestCases.xlsx Excelファイルを探します
この Workbook 関数参照を Worksheet、Cell、または CellRange 関数と一緒に使用して、Excelファイルの内容にアクセスするか、またはワークブックについての他の情報を取得します。
ブックのプロパティ
以下の読み取り専用プロパティが Workbook 関数で利用可能です:
| プロパティ | 定義 |
|---|---|
colorMode | Excel の RGB モードでブックを操作するには、デフォルトは"RGB"ですが、"RGB" または "パレット"に設定できます。パレット モードでは、色のない要素に "NoColor"値を指定できます。 注意 最も一般的な使用法は、"colorMode"を "RGB" に設定したままにすることです。パレット モードに切り替える主な目的は、RGB モードでは使用できない色をテストするか、"NoColor" に設定することです。パレット モードでは、サポートされる色の数が限られているため、色を設定すると若干異なる色になる可能性があります。 |
worksheetCount | ワークブックに含まれるワークシートの数。 |
worksheetNames | ワークブック内のすべてのワークシートの名前のリスト。 |
worksheetCount and worksheetNamesを示す例:
put workbook(excelFilePath) into myWorkbook
put myWorkbook is a workbook --> True (myWorkbook is a workbook object)
put myWorkbook's worksheetCount --> 3
put the worksheetNames of myWorkbook --> ["People","Departments","Facilities"]
関連:
- Worksheet 関数: この関数を使用してワークブック内の特定のワークシートにアクセスします。
- Cell 関数: この関数を使用して、個々のセルの値またはプロパティにアクセスします。
- CellRange 関数: この関数を使用して、セル、行、または列の範囲にアクセスします。
Worksheet 関数
Behavior: この関数は、ワークブック内の特定のワークシートへのアクセスを提供します。この関数は Worksheet 参照を返します。
Parameters: ブック参照とシート識別 子。ブック参照は、最初のパラメーターとして関数に渡すか (以下の最初の構文)、Worksheet 関数をブック オブジェクトの関数として呼び出すことができます (以下の 2 番目と 3 番目の構文)。シート識別子は、シートの名前またはその番号 (ブックの最初のシートの場合は 1、2 番目のシートの場合は 2 など) のいずれかです。
構文:
worksheet( workbook, sheetIdentifier )
worksheet( sheetIdentifier ) of workbook
workbook .worksheet( sheetIdentifier )
例:
set worksheet2 to Worksheet(MyExcelFile, 2) // Excelファイルの2番目のワークシートを参照するようにworksheet2を設定します
例:
set custBudget to MyExcelFile.Worksheet("Customer Budget") // "Customer Budget" という名前のワークシートを参照するように custBudget を設定します
ブックのプロパティ
以下のプロパティは Worksheet() 関数で利用可能です:
| プロパティ | 定義 |
|---|---|
name | ワークブック内のシートの名前。このプロパティを設定すると、ワークシートの名前を変更できます。 |
workbook | シートが属するブック (Workbook オブジェクト)。読み取り専 用です。 |
sequenceNumber | 各ワークシートには、ワークブック内のシーケンスを示す sequenceNumber プロパティがあります。最初のワークシートの sequenceNumber は 1 です。"sequenceNumber"を別の値に設定すると、ワークシートをワークブック内の別の順序の位置に移動できます。 |
hidden | put the cellType of Cell("A3") of worksheet1— ワークシートの指定されたセルから cellType プロパティ値を表示 |
tabColor | ワークシートの tabColor プロパティは、そのシートのタブの色を指定します。 |
ハイパーリンク | ワークシートの hyperlinks プロパティは、ワークシート内のすべてのハイパーリンクのリストを返す読み取り専用プロパティです。各ハイパーリンクは、プロパティ hyperlinks 、row,、およびcolumn を含むプロパティ リストとして返されます。これらの値は、リンク URL、セルの行番号と列番号です。 関連: セルのハイパーリンク プロパティ |
例:
put worksheet(1) of myWorkbook into mySheet //ワークブックの最初のワークシートにアクセスする
put mySheet is a worksheet --> True (mySheet is a worksheet object)
put mySheet's name --> "People"
put "Special" before mySheet's name
put the worksheetNames of myWorkbook --> ["People","Departments","Facilities"]
"workbook"プロパティの例:
put the worksheetNames of mySheet's workbook --> ["SpecialPeople","Departments","Facilities"]
sequenceNumber プロパティの例:
// ワークシートをワークブックの先頭に 1 つ近い位置に移動します
if myWorksheet’s sequenceNumber > 1 then subtract 1 from the sequenceNumber of myWorksheet
hidden プロパティの例:
turn off the hidden of worksheet(2) of myWorkbook // 隠した2番目のワークシートを再表示
tabColor プロパティの例:
set the tabColor of myWorksheet to yellow
ハイパーリンク プロパティの例:
put the hyperlinks of myWorksheet
関連:
- Workbook Function: この関数を使用して、Excelワークブックファイルにアクセスします。
- Cell 関数: この関数を使用して、個々のセルの値またはプロパティにアクセスします。
- CellRange 関数: この関数を使用して、セル、行、または列の範囲にアクセスします。