HotXLS ドキュメント

CreateLoadedCellCursor メソッド

読み込み済みのクラシック XLS ワークブックに格納されたセルに対するプル カーソルを、独立したスタイルを持つ空セルを含めるオプション付きで作成します

構文

function CreateLoadedCellCursor: IXLSLoadedCellCursor; overload;
function CreateLoadedCellCursor(
  AIncludeStoredBlanks: Boolean): IXLSLoadedCellCursor; overload;

走査順序とコスト

カーソルは、ワークシートをコレクション順に訪れ、その後セルを行と列の昇順で訪れます

SheetIndex、 Row、および Col は 1 始まりのパブリック座標です

走査は割り当て済みのクラシック スパース ストレージ ブランチを直接たどるため、カーソル状態は一定に保たれ、ワークシートの行数や列数の上限に比例した配列を割り当てることもありません

パラメーターなしのオーバーロードは空セルをスキップし、既存の値と数式の走査コントラクトを維持します

独立したスタイルを持ち、行、列、またはワークシートの書式から継承されたセル XF と異なる XF を持つ、格納済みの空セルを含めるには True を渡します

継承された書式だけでは、空の座標は実体化も出力もされません

スナップショットのフィールド

フィールド意味
SheetIndex / SheetNameキャプチャ時点での所有ワークシートの識別情報
Row / Col1 始まりのセル座標
StyleIndexクラシック XF スタイル インデックス
Kind (TXLSLoadedCellKind)xlckText、 xlckNumber、 xlckDateTime、 xlckBoolean、 xlckFormula、または xlckBlank
Value現在のセルに対してキャプチャされた、所有される Variant 値
Formula数式セルの場合は数式テキスト、それ以外は空の文字列

Strings and Variants in TXLSLoadedCellSnapshot の文字列と Variant は所有される値であり、内部のセル オブジェクトを公開しません

数式セルの場合、 Value はクラシック ワークブックの通常の値アクセスのセマンティクスに従い、必要な場合の計算も含まれます

For xlckBlankの場合、 Value は Unassigned、 Formula は空であり、 StyleIndex が格納されたセル XF を識別します

状態と無効化

State は、最初の TXLSLoadedCellCursorStateが成功するまで xlccBeforeFirst 、 MoveNextが利用可能な間は xlccActive 、走査が完了した後は Current になります xlccEof after traversal completes

最初のセルの前や EOF の後で Current を読み取ると、 EXLSLoadedCellCursorState

格納セルの作成や削除、ワークシートの追加、削除、移動、またはワークブック モデルの置き換えを行うと、カーソルは無効化されます

その後の MoveNext または Current の呼び出しは EXLSLoadedCellCursorInvalidated

既存のセルの値、数式、書式を変更してもカーソルは無効化されず、すでにキャプチャされたスナップショットは変化しません

例

Cursor := Workbook.CreateLoadedCellCursor;
while Cursor.MoveNext do
begin
  Cell := Cursor.Current;
  Memo1.Lines.Add(Format('%s!R%dC%d = %s',
    [Cell.SheetName, Cell.Row, Cell.Col, VarToStr(Cell.Value)]));
end;

関連項目