Excel
Excel
3.4.1 Excel
説明
Excel - 読み出しと書き込みマイクロソフトエクセル(.xls)および(.xlsx)。6.2.2以降、マクロ付きファイル(.xlsm)もサポートしています。マクロは更新できませんが、ファイル保存時に保存されます。
このコマンドは、XLSとXLSXドキュメントをナビゲートし、セル値の読み取り、書き込み、検索を行い、Excelがサポートするフォーマットのサブセットを扱うことができます。このコマンドはApache POI 4.0.1フレームワークそのため、制限があります。POIライブラリは<インストール先>/libs/poiフォルダに保存され、いずれカスタムバージョンにアップグレードされるかもしれません。
コマンドはこの一連の動作を定義します:
Open - 既存の Excel ドキュメントを読み取り/書き込みモードで開きます。
Create - 新しい Excel ドキュメントを作成したり、シートを作成したりします。
Select - シートを選択し、セルを選択してその値と書式を取得します。
Find - 選択したシート内のセルをその値または正規表現で検索します。
Set - シート名またはセルの値(書式)を設定します。
Copy - コピーするセルをマークします。
Paste -「コピー」とマークされたセルを Excel ドキュメントに貼り付けます。
Close - Excel ドキュメントを閉じて保存します。
典型的なワークフローは、以下の論理的ステップで構成されます。
既存のExcel文書を開く(「Excel open」)または新規作成する(「Excel create」)。スクリプトが複数の文書を同時に処理する場合、各ファイルにはIDを付与し、以降のすべてのExcelコマンドでそのIDを参照する必要があります。このステップでは、ファイル名、パス、構造を変数に設定します。。
スプレッドシートを選択(開く)または作成する."Excel open"によるExcelドキュメントの開く操作では、パラメータで明示的にシートを指定しない限り、ワークブック内の最初のスプレッドシートが自動的に選択されます。「Excel open」による新規ドキュメント作成では、明示的に別名を指定しない限り、デフォルトの「Sheet1」という名前のスプレッドシートが自動的に作成・選択されます。後でスプレッドシートの選択を変更するには「Excel select」を呼び出します。新しいスプレッドシートを作成して選択するには"Excel create"を使用します。スプレッドシートの選択を変更するたびに、利用可能なスプレッドシートの数と現在選択されているスプレッドシートの名前および番号を記述するシート変数グループが更新されます。
セルを読み取る には “Excel select” を、セルの値を検索する には “Excel find” を使用します。セルが正常に見つかった場合、その値、タイプ、およびフォーマットがスクリプト変数の形で提供されます。セルに数式が含まれている場合、"evaluate"パラメータに応じて、その数式のテキストまたは結果の値を取得できます。シートと同様に、セル参照はキャッシュされ、単一のセルに対して操作を行う一連のコマンドでは、各コマンドインスタンスで座標(行/列番号または参照)を指定する必要はありません。
セルを変更するには、”Excel set”コマンドを使用します。書式が明示的に指定されていない場合、コマンドは数値または論理値をチェックし、最終的に文字列をデフォルトとします。座標が存在しないセルを指している場合、そのセルは作成されます。
セルを選択し、それらをExcel文書(同じ文書または別の文書)に貼り付けるには、"Excel copy"と"Excel paste"のコマンドを順に使用します。
ドキュメントを閉じて変更を保存または破棄するには、”Excel close”コマンドを呼び出します。この手順は任意であり、スクリプト終了時にすべてのドキュメントは自動的に閉じられ、最終的に保存されます。
Excel文書は共有ネットワークドライブから読み書きできます。権限には特に注意が必要です。例えば、ネットワークドライブ「macbook.local」上の共有フォルダ「data」内にファイルを作成するには、以下のようにします:
Excel create file="\\\\macbook.local\\data\\myfile.xls"
読み取りと書き込みの両方の操作を示す典型的な例を以下に示す。既存のExcel 2007ファイルを開き、2番目のシートを選択し、各行について最初のセルから値を読み取り、それを2番目のセルに書き込みます。
// エクセルファイルを開く。I/Oエラーが発生したら終了する。
Excel open file="C:\data\test.xlsx"
if ({_EXIT_CODE} > 0) {
Exit {_EXIT_sc="{_EXCEL_ERROR}"
}
// 2枚目を選択
Excel select sheet=1
// すべてのデータラインを反復処理する
for (index=1; {index}<{_EXCEL_SHEET_ROWS}+1;index={index}+1) {
# 最初のセルから値を読み取る
Excel select row={index} column="1"
# 2番目のセルの値を設定する
Excel set row={index} column="2" value="{_EXCEL_CELL_VALUE}"
}
Excelコマンドはこれらの変数に値を設定します:
誰がいつ作るのか | 変数名 | 説明 |
|---|---|---|
Excel open, ("File Group") | _EXCEL_FILE | 文書ファイルのパス(完全/絶対)。 |
_EXCEL_FILENAME | 文書ファイル名。 | |
_EXCEL_OUTFILE | 明示的に指定された場合は、出力ファイルパス(完全/絶対)。 | |
_EXCEL_OUTFILENAME | 明示的に指定された場合は、出力ファイル名。 | |
_EXCEL_SHEET_COUNT | 文書内で利用可能なスプレッドシートの数。 | |
Excel open ("Sheet Group") | _EXCEL_SHEET_NAME | 現在選択されているシートの名前。 |
_EXCEL_SHEET_NUMBER | 現在選択されているシートの番号。 | |
_EXCEL_SHEET_ROWS | 現在選択されているシートで使用可能な行数。 | |
Excel set ("Cell Group") | _EXCEL_CELL_COLUMN | 選択された/見つかった/変更されたセルの通常の列番号。 |
_EXCEL_CELL_ROW | セルの通常の行番号。 | |
_EXCEL_CELL_TYPE | セルタイプ;[BLANK、BOOLEAN、ERROR、FORMULA、NUMERIC、STRING]のいずれか。 | |
_EXCEL_CELL_VALUE | セルの値(文字列)。4.1.3以降、セルが以下のように設定されている場合、値はフォーマットされます。(日付/数値/通貨フォーマット、...) | |
_EXCEL_CELL_VALUE_RAW | 生のセル値(書式なし)。4.1.3からサポート。 | |
_EXCEL_CELL_REF | Excel互換のセル参照、例えば "A1 "や "J10"。 | |
_EXCEL_CELL_FORMAT | セル番号または日付フォーマット文字列(6.2.3以降)。 | |
_EXCEL_CELL_WIDTH | セル(列)の幅を可視文字数で指定。結果のピクセル値はフォントおよび最終的なセルマージンによって影響を受けます。 | |
_EXCEL_CELL_HEIGHT | セル(行)の高さ(ポイント単位)(6.3.3以降)。結果のピクセル値は、フォントおよび最終的なセルマージンによって影響を受けます。 | |
_EXCEL_CELL_FOREGROUND | HTML形式におけるセルのフォント色(前景)と塗りつぶし色(背景)(6.3.3以降)。例えば、 | |
すべてのExcelコマンド | _EXCEL_ERROR | 最後のExcelコマンド実行またはコンパイル時に発生したエラーのテキスト。 |
このコマンドは通常、成功すると0を返すか、以下の終了コードのいずれかを返します:
終了コード | 疑似コード | 説明 |
|---|---|---|
0 | SUCCESS | 成功裏に終了。 |
1 | FAILED_TO_OPEN | 入力ファイルを開くのに失敗しました。Excelを開く」だけで返されます。 |
2 | FAILED_TO_SAVE | ファイルへの保存に失敗しました。Excelを閉じる "だけで返されます。 |
3 | FAILED_TO_CREATE | 新しい文書またはシートの作成に失敗しました。Excelの作成」だけで返されます。 |
4 | SHEET_NOT_FOUND | row及び/又はcolumnパラメータが既存のセルを指していません。row "と "column "をサポートするすべてのセル読み取りコマンドによって返されます。 |
5 | CELL_NOT_FOUND | 指定された座標または指定された値を持つセルの検索に失敗しました(「Excelの検索」)。 |
各アクションのシンタックスとパラメータについては、以下で詳しく説明します。
SYNOPSIS
Excel open
Excel open [file=<input_Excel _file>>] [outfile=<output_Excel_file>] [id=<identifier>] [sheet=<sheet_name_or_index>] [password=<password>]
赤色は必須パラメータです
オプション
file=<Excel_file>
-開くExcelファイル。相対パスはスクリプトディレクトリ(スクリプトを呼び出すフォルダを意味する)に対して解決されます。
outfile=<出力_Excel_file>
-Excelデータを保存する出力ファイル(変更の有無にかかわらず)。このパラメータが指定されると、fileで指定された入力ファイルは読み取り専用モードで開かれ、そのデータはメモリにロードされ、ファイルが破棄モードで閉じられない限り(Excel close save=false)、outfileに保存されます。入力ファイルと出力ファイルは同じフォーマットでなければなりません(両方ともXLSかXLSXでなければなりません)。
id=<識別子>
-Excelドキュメントの識別子(名前)。スクリプトが一度に1つのExcelドキュメントだけを開いたり 作成したりする場合は、このパラメータを指定する必要はありません。複数のドキュメントを開いている場合、識別子は、その後のExcelの読み書きコマンドでドキュメントを識別します。
sheet=<sheet_name_or_index>
-選択するスプレッドシート。このパラメータは省略可能であり、省略した場合はデフォルトで最初の スプレッドシートを選択します(開く)。
password=<パスワード>
-ファイルのロックを解除またはロックするためのパスワード(6.1以降)。ファイルが保護されておらず、パスワードが指定された場合、保存後に保護されます。
戻り値
openコマンドは、失敗した場合(例:指定された名前のシートが既に存在する場合)に0(成功)または3(作成失敗)を返します。このコマンドは、FileそしてSheet 変数グループから変数を設定します。
使用例
Excel open file="data.xls"
スクリプトと同じディレクトリにあるMS Excel文書を読み取り/書き込みモードで開きます。
Excel open file="data.xls" outfile="newdata.xls"
指定されたディレクトリにあるMS Excel文書を読み取り専用モードで開きます。文書が閉じられたら、内容を保存し、最終的にすべての変更をスクリプトディレクトリの指定された出力ファイルに保存します。出力ファイルが存在する場合は上書きされます。
Excel create
Excel create file=<Excel_file> [id=<identifier>] [sheet=<sheet_name>] [password=<password> ]
Excel create sheet=<sheet_name> [id=<identifier>]
赤色は必須パラメータです
オプション
file=<Excel_file>
-作成するExcelファイル。相対パスは、スクリプト・ディレクトリ(呼び出すスクリプトを含むフォルダを意味します)に対して解決され。ファイルが存在する場合は上書きされます。
id=<識別子>
-作成されるドキュメントの識別子(名前)。スクリプトが一度に1つのExcelドキュメントだけを開いたり 作成したりする場合は、このパラメータを指定する必要はありません。複数のドキュメントを開いている場合、識別子は、その後のExcelの読み書きコマンドでドキュメントを識別します。
sheet=<シート名>
-作成するスプレッドシートの名前。新規ファイルを作成するためにfileパラメータを指定してコマンドを 呼び出す場合、sheetパラメータは省略可能です。これがない場合、コマンドはMS Excelと同じように動作し、新しく作成されたファイルに「Sheet1」というデフォルトのスプレッドシートが作成されます。
password=<パスワード>
-保存時にファイルをロックするためのパスワード。
戻り値
openコマンドは、失敗した場合(例:指定された名前のシートが既に存在する場合)に0(成功)または3(作成失敗)を返します。このコマンドは、File そしてSheet 変数を設定します。
使用例
Excel create file="C:\Data\log.xls"
メモリ内に新しいエクセル文書を作成し、指定されたファイルに関連付けして出力します。また、"Sheet1 "というシートを作成し、それを選択します。
Excel create file="C:\Data\log.xls" sheet="Data"
前の例と前の例と同じですが、シート名は「Data」になります。
Excel create sheet="Data"
現在開いているドキュメントに「Data」という名前の新しいシートを作成します。
Excel select
Excel select [sheet=<sheet_name_or_index>] [id=<identifier>]
Excelselect [row=<row_number>] [column=<column_number_or_id>] [sheet=<sheet_name_or_index>] [id=<identifier>]
Excel select [ref=<cell_id>] [sheet=<sheet_name_or_index>] [id=<identifier>]
赤色は必須パラメータです。
オプション
row=<row_number>
column=<column_number_or_id>
-
選択するセルを特定する行番号と列番号。番号付けは1から開始します。列はMS Excelで使用されるアルファベットID(「A」-「ZZ」)で追加参照される場合があります。例えば、「column=C」は「column=3」と同等です。「row」と「column」パラメータは常に同時に指定する必要があります。最初のセル操作では「現在の」セルを指定するため、これらのパラメータは必須です。参照はその後キャッシュされ、単一セルに対する一連のコマンドでは「column」/「row」または「ref」座標を繰り返し指定する必要はありません。
ref=<セルID>
-MS Excelの参照と互換性のあるセルID(例:"A1"、"J10")。これはセル参照の代替手段として提供されています。このパラメータは、行/列パラメータのペアと併用しないでください。
sheet=<sheet_name_or_index>
-選択する(開く)スプレッドシート。コマンドをシートの選択だけに使う場合(上のリストの最初の形式)、このパラメータは必須である。特定のセルを対象とする他のコマンド形式ではこのパラメータは必要なく、このパラメータがない場合、コマンドは最後に選択されたシート上で動作します。
evaluate=<true|false>
-FORMULA セルの処理方法を制御するフラグ。このフラグが "true "の場合、セル値は計算式の結果となります。そうでない場合は、_EXCEL_CELL_VALUEの下に格納されているセル値に数式テキストが含まれます。対象となるセルがFORMULAでない場合、このパラメータは無視されます。デフォルト値は "false "です。
id=<identifier_or_name>
-操作を適用する文書識別子。スクリプトがExcel文書を1つだけ開き/作成し、open/createコマンドでIDが指定されなかった場合、このパラメータを指定する必要はありません。
戻り値
openコマンドは0(成功)、4(シートが見つからない)、または5(セルが見つからない)のいずれかを返します。このコマンドは、Sheet そして Cell 変数グループ変数グループから変数を設定します。
使用例
Excel select sheet="2"
ドキュメント内の 2 番目のシートを選択し、そのプロパティを Sheet 変数に保存します。
Excel select sheet="Data"
ドキュメント内の「データ」というシートを選択します。
Excel select row="2" column="4"
現在のシート内の指定された位置にあるセルを選択し、そのプロパティをCell 変数に取得します。。
Excel select sheet="Results" ref="A5"
Excel find
Excel find [value=<value>] [type=<type>] [sheet=<sheet_name_or_index>] [evaluate=<true|false>] [id=<identifier>]
Excel find [pattern=<regular_expression>] [type=<type>] [sheet=<sheet_name_or_index>] [evaluate=<true|false>] [id=<identifier>]
赤色は必須パラメータです。
オプション
value=<価値>
-検索する値の文字列表現。現在のシートは、指定された値を持つセルを行ごとに検索し、最初にマッチしたものが選択されます。
pattern=<正規表現>
-正規表現に一致するセル値を検索します。正規表現はJavaのパターン仕様に準拠している必要があります。.
type=<タイプ>
-検索を制限するセルの種類。BLANK, BOOLEAN, ERROR, FORMULA, NUMERIC, STRING]のいずれかでなければなりません。パラメータを指定しない場合は、すべてのセルタイプが検索されます。
sheet=<シート名またはインデックス>
-選択する(開く)スプレッドシート。このパラメータはオプションであり、存在しない場合、コマンドは最後に選択されたシート上で動作します。
evaluate=<true|false>
- FORMULAセルの処理方法を制御するフラグです。「true」の場合、セルの値は計算式の結果になります。それ以外の場合、指定された値は数式テキストと比較されます。デフォルト値は「false」です。
id=<識別子または名前>
-検索するドキュメント識別子。スクリプトがExcelドキュメントを1つだけ開いたり作成したりし、開く/作成コマンドでIDが指定されていない場合は、このパラメータを指定する必要はありません。
戻り値
openコマンドは0(成功)、4(シートが見つからない)、または5(セルが見つからない)のいずれかを返します。セルが正常に見つかった場合、コマンドはSheet変数グループそしてCell 変数グループの変数に値を設定します。。
使用例
Excel find value="Test data"
if ({_EXIT_CODE} > 0) {
Warning "The \"Test data\" cell was not found."
Exit 1
}
Excel select row={_EXCEL_CELL_ROW}+1 column={_EXCEL_CELL_COLUMN}
現在のスプレッドシートで「テストデータ」というテキストを含むセルを検索します。検索に成功した場合は、見つかったセルの下のセルを選択します。検索に失敗した場合は、警告を記録し、終了コード1でスクリプトを終了します。
Excel find value="2" evaluate="true"
現在のシートで、数値セル(数値が2)またはテキストセル(数値が2)を検索します。評価フラグがオンになっているため、FORMULAタイプの各セルは計算(評価)され、値2と比較されます。
Excel find sheet="Data" pattern="boo.*"
ドキュメント内の「Data」というシートを選択し、「boo」で始まる最初の値を検索します。
Excel find type=FORMULA pattern="SUM\(.*\)"
現在のシートから、要約式を含む FORMULA タイプの最初のセルを探し、そのプロパティをCell変数を使用します。evaluate "フラグが指定されておらず、デフォルトがfalseなので、_EXCEL_CELL_VALUEには数式テキストが入力されます。
Excel find type=FORMULA pattern="SUM\(.*\)" evaluate="true"
前の例と同じ。ただし、_EXCEL_CELL_VALUEには数式の結果、つまり数式テキストで指定されたセルの合計に等しい数値が含まれます。
Excel set
Excel set [row=<row_number>] [column=<column_number_or_id>] [sheet=<sheet_name_or_index>] [id=<identifier>] [type=<type>] [value=<value>] [informat=<javaFormat>] [format=<excelFormat>]
Excel set [ref=<cell_id>] [sheet=<sheet_name_or_index>] [id=<identifier>] [type=<type>] [value=<value>] [informat=<javaFormat>] [format=<excelFormat>] [width=<columnWidth>] [height=<rowHeight>] [fg=<htmlColor>] [bg=<htmlColor>]
赤色は必須パラメータです。
オプション
row=<行番号>
column=<column_number_or_id>
-行と列は、選択するセルを識別する通常の番号です。番号は1から始まります。列は、MS Excelで使用されるアルファベットID(「A」~「ZZ」)で参照することもできます。例えば、「column=C」は「column=3」と同じです。「row」パラメータと「column」パラメータは常に一緒に指定する必要があります。これらのパラメータは、最初のセル操作で「現在の」セルを指定するために必須です。参照はキャッシュされるため、単一のセルを操作する一連のコマンドで「column」/「row」または「ref」座標を繰り返す必要はありません。
ref=<セルID>
-MS Excelと互換性のあるセルID(例:"A1"、"J10")。これはセル参照の代替手段として提供されています。このパラメータは、行/列パラメータのペアと併用しないでください。
sheet=<シート名またはインデックス>
-選択(開く)するスプレッドシート。スプレッドシートの名前または1から始まる通常の番号で指定できます。コマンドがシートの選択のみを目的としている場合(上記のリストの最初のコマンド構文形式)、このパラメータは必須です。特定のセルを対象とする他のコマンド形式では、このパラメータは必要ありません。このパラメータが指定されていない場合、コマンドは最後に選択されたシートに対して動作します。
type=<タイプ>
-設定するセルの型。[BLANK、BOOLEAN、ERROR、FORMULA、NUMERIC、STRING]のいずれかである必要があります。パラメータが指定されていない場合、型はデフォルトでSTRINGになります。
value=<価値>
-設定するセル値。セルの型と一致している必要があります。例えば、セルの型がNUMERICの場合、値は有効な数値である必要があります。「type」パラメータが指定されていない場合、コマンドは数値、ブール値、文字列のいずれかを推測し、それに応じてセルの型を設定します。この動作をオーバーライドするには、型を明示的に指定してください。
値には数値式を含めることができますが、数値評価が必要であることをコンパイラに伝えるため、型を明示的にNUMERICに設定する必要があります。FORMULA型のセルを作成して値を入力するには、type="FORMULA"パラメータを使用し、先頭のイコール記号の有無にかかわらず、数式を値として指定します。例えば、「SUM(A1:A4)」と「=SUM(A1:A4)」はどちらも有効な数式です。
informat=<javaフォーマット>
-値を解析するためのJava日付フォーマットを入力します(6.2.3以降)。このパラメータは、値パラメータに日付または時刻(あるいはその両方)が含まれており、適切に解析する必要があることを示します。
MS Excelは、日付値を1900年1月1日からの経過日数として数値セルに保存します。日付セルに日付を入力するには、自分で数値を計算し、valueパラメータで指定することもできます。より簡単な方法は、 valueと informatを組み合わせて 、人間が判読できる日付文字列から日付を入力することです。例えば、 value="21 Jan 1900" とinformat="dd MMM yyyy"というパラメータを指定すると、セルに21という数値が入力されます。
MS Excel でセルを書式設定された数値または日付/時刻として表示するには、formatパラメータを使用します。
format=<Excel形式>
--MS Excelのドキュメンテーション(6.2.3以降)で規定されているセルの数値書式。これにより、日付や時刻などの数値の表示形式を、実際の数値を変更することなく変更できます。この書式は、Excelが計算に使用するセルの値には影響しません。
width=<列幅>
-可視文字数としてのターゲット列幅。その結果、画面上のピクセルサイズは、フォントと最終的なセルの余白に左右されます。Excelのデフォルトの列幅は8.43文字に設定されています。
height=<行の高さ>
-目標とする行の高さをポイント単位で指定します。
fg=<htmlColor>
-設定するセルのフォント(前景)色(6.3.3以降)。値は、先頭のハッシュ文字の有無にかかわらず、HTMLスタイルの6文字のRGB 16進数形式(白は'#000000'の'000000'、黒は'#ffffff'の'fffff')、またはセミコロンで区切られた10進数のRGB構成要素のリスト(白は'0;0;0'、黒は'255;255;255')で指定できます。。
bg=<htmlColor>
- 設定するセルの塗りつぶし(背景)色。値は、先頭のハッシュ文字を含むか含まないかのHTMLスタイルの6文字のRGB 16進フォーマット(白は'#000000'の'000000'、黒は'#ffffff'の'fffff')、または10進数のRGBコンポーネントのセミコロンで区切られたリスト(白は'0;0;0'、黒は'255;255;255')。背景色を設定すると、セルのパターンも無地にリセットされます。
id=<識別子または名前>
-セット操作を適用する文書識別子。スクリプトがExcel文書を1つだけ開き/作成し、open/createコマンドでIDが指定されなかった場合、このパラメータを指定する必要はありません。
戻り値
openコマンドは0(成功)、4(シートが見つからない)、または5(セルが見つからない)のいずれかを返します。セルが正常に見つかった場合、コマンドは値またはセルタイプを設定し、 SheetそしてCell 変数グループから変数を設定します。
使用例
Excel set ref=A5 value="Test data"
現在のシートのA5セルの値を「テストデータ」に設定します。セルの型はSTRINGになります。
Excel set row=A5 column="A" value="2" sheet="Results"
「結果」シートを選択し、A1 セルの値を 2 に設定します。値は明らかに数値であるため、セルの種類は自動的に NUMERIC に設定されます。
# コンパイラー・エラーを回避するために、変数を数値として宣言する。
Var _EXCEL_CELL_VALUE=1
Excel set row=1 column=A value="2"
Excel set value={_EXCEL_CELL_VALUE}+1 type=NUMERIC
A2 セルの値を 2 に設定し、それを 3 に増分します。_EXCEL_CELL_VALUE の宣言は、値を評価するときにコンパイラ エラーを抑制するためにのみ必要です。
Excel set row=5 column=1 type=FORMULA value="SUM(A1:A4)"
Excel select evaluate=true
A5 セルの値を A1 ~ A4 セルの集計式に設定し、結果を取得します。
Excel copy
Excel copy [rows=<row(s)>>] [columns=<column(s)>] [sheet=<シート名_or_インデックス>] [id=<識別子>]
赤色は必須パラメータです
オプション
rows=<行>
columns=<カラム(複数可)>
Excelの貼り付け操作で選択されるセルを示す行と列。行は、1つの数値("1")、範囲("1-5")、またはコンマやセミコロンで区切られた数値や範囲のリスト("1;3;5-6")として指定することができます。列も同じ構文で、数字の代わりに文字を使うことができます("A;C;E-F")。番号は1から始まります。
行(rows)」と「列(columns)」パラメー タは常に一緒に指定しなければなりません。このコマンドは、指定された行と列のすべてのセルを選択します。例えば、"rows=1-2 "と "columns=A-C "のパラメータは、A1, A2, B1, B2, C1, C2の6つのセルを選択します。空の位置は無視されるので、指定された範囲は実際のシートサイズを超えるかもしれません。
このコマンドは選択されたセルのデータを内部的にコピーするわけではありません。単に選択範囲への参照を保存するだけです。コピーと貼り付けの間に選択セルが変更されると、更新されたデータがコピーされます。
sheet=<sheet_name_or_index>
セルを選択するスプレッドシート。指定しない場合は、最後に選択された(アクティブな)シートに戻ります。
id=<identifier_or_name>
コピー元の文書の識別子。スクリプトがExcel文書を1つだけ開き/作成し、open/createコマンドでIDを指定しなかった場合は、このパラメータを指定する必要はありません。
戻り値
コピー コマンドは、実行時エラーのために操作を完了できない場合、0 (成功) を返すか、構文エラーをスローします。。
使用例
Excel open file="source.xls" id="source"
Excel copy rows=1-3 columns=A id="source"
Excel open file="target.xls" id="target"
Excel paste ref=B1 id="target"
source.xls ファイルのセル A1、A2、A3 を target.xls ファイルのセル B1、B2、B3 にコピーします。
Excel paste
Excel paste [row=<row_number>] [column=<column_number_or_id>][sheet=<シート名_or_インデックス>] [id=<識別子>]
Excel paste [ref=<cell_id>] [sheet=<sheet_name_or_index>] [id=<identifier>]
赤色は必須パラメータです
オプション
row=<行番号>
column=<column_number_or_id>
Excelのコピーで選択したセルを貼り付ける対象位置を指定します。例えば、セルA1とA2がコピーされ、ターゲット位置が "row=2 "と "column=3 "に設定されている場合、データはC2とC3に貼り付けられます。
貼り付けたセルに数式が含まれている場合、その参照は貼り付け先の位置に応じてシフトされます。例えば、A1から始まる数値の列とその合計("=SUM(A1:A5)")をコピーし、B2セルに貼り付けると、数式は"=SUM(B2:B6)"に更新されます。このコマンドは、選択したデータ以外のシートやセルへの外部参照を認識しないため、参照が壊れる可能性があることに注意してください。このようなセルをコピーするには、Excelのsetコマンドを使用してください。
ref=<セルID>
例えば "A1 "や "J10 "のように、MS Excelと互換性のある貼り付け先のセルID。これは、セル参照の代替方法として提供されます。このパラメータは、row/columnパラメータ・ペアと一緒に使ってはなりません。
sheet=<sheet_name_or_index>
貼り付け先のスプレッドシートは、名前か 1 から始まる番号で指定することができます。
id=<identifier_or_name>
コピー元の文書の識別子。スクリプトがExcel文書を1つだけ開き/作成し、open/createコマンドでIDを指定しなかった場合は、このパラメータを指定する必要はありません。
戻り値
実行時の問題により操作を完了できない場合、貼り付けコマンドは 0 (成功) を返すか、構文エラーをスローします。
使用例
例については、Excel copyコマンドを参照してください。。
Excel close
Excel close [id=<identifier>] [save=<true|false>] 。
赤色は必須パラメータです
オプション
id=<identifier_or_name>
-閉じる文書の識別子。スクリプトがExcel文書を1つだけ開き/作成し、open/createコマンドでIDが指定されなかった場合、このパラメータを指定する必要はありません。
save=<true|false>
-trueはドキュメントをファイルシステムに保存し、falseは変更を破棄します。デフォルト値は "true "で、スクリプトの実行が終了すると、 変更があれば自動的にファイルが保存されます。
戻り値
openコマンドは、I/Oエラー発生時に0(成功)または2(保存失敗)を返します。また、コンテキストからExcel固有の変数をすべてクリアします。
使用例
Excel open file=test.xls
...
Excel close
ファイルを閉じます。内容を変更した場合は、test.xls ファイルに変更内容を保存します。
Excel open file=test.xls outfile=test2.xls
...
Excel close
ファイルを閉じます。test.xlsから読み込まれた内容は、変更の有無にかかわらずtest2.xlsに書き込まれます。
Excel open file=test.xls id="testfile"
...
Excel close id="testfile" save=false
ファイルを閉じ、最終的な変更を破棄する。testfile "IDは "Excelを開く "でファイルに割り当てられたので、"Excelを閉じる "でも、この2つのコマンドの間の他のExcel呼び出しでも、指定しなければなりません。