HotXLS Docs

Classi TXLSXCell / TXLSXCells

Accesso al valore della cella su un TXLSXWorksheetTXLSXCell è una singola cella (valore più formula opzionale e indice di formato); TXLSXCells è la raccolta per foglio di lavoro raggiunta tramite Worksheet.Cells. Dichiarato in lxHandleX

Dichiarazione di TXLSXCell

type
  TXLSXCell = class
    constructor Create(ARow, ACol: Integer; const AValue: Variant);
    destructor Destroy; override;
    procedure SetWorkbook(AWorkbook: TXLSXWorkbook);
    procedure SetArrayRoot(ARootRow, ARootCol: Integer);
    procedure SetArrayRange(ARootRow, ARootCol, ALastRow, ALastCol: Integer);
    property Workbook: TXLSXWorkbook;
    property ArrayRootRow: Integer;
    property ArrayRootCol: Integer;
    property ArrayLastRow: Integer;
    property ArrayLastCol: Integer;
    property Row: Integer;
    property Col: Integer;
    property Value: Variant;
    property FormatIndex: Integer;
    property FontIndex: Integer;
    property FillIndex: Integer;
    property BorderIndex: Integer;
    property NumberFormatIndex: Integer;
    property NumberFormat: WideString;
    property AlignmentIndex: Integer;
    property ProtectionIndex: Integer;
    property Formula: WideString;
    property RichText: TXLSXRichText;
    property Locked: Boolean;
    property FormulaHidden: Boolean;
    property FormattedText: WideString;
    property TaggedText: WideString;
    property NamedStyleXfId: Integer;
    property LinkedStyle: TXLSXLinkedStyle;
  end;
      

Membri di TXLSXCell

DestroyLibera lo stato dell'istanza e rilascia le risorse possedute
SetWorkbookScrive il riferimento alla cartella di lavoro proprietaria in modo che operazioni come le ricerche del formato numerico possano riutilizzare i pool di cartelle di lavoro condivisi in tempo O(1)
SetArrayRoot / SetArrayRangeImposta i marcatori ArrayRoot* e ArrayLast* per gli ancoraggi di espansione delle formule a matrice, in modo che una cella radice mappi tutte le celle dipendenti nello stesso rettangolo
WorkbookRiferimento inverso al TXLSXWorkbook proprietario impostato dalla creazione delle celle del foglio di lavoro
ArrayRootRow / ArrayRootCol / ArrayLastRow / ArrayLastColMetadati di espansione CSE in sola lettura utilizzati dal ciclo di salvataggio/caricamento per i rettangoli delle formule a matrice
RowIndice di riga in base 1
ColIndice di colonna in base 1 (1 = A, 2 = B, ...)
ValueValore della cella come Variant. Sono supportati stringhe, numeri, booleani e TDateTime . L'impostazione di un TDateTime seleziona automaticamente il cellXf della data integrato (XlsxXfIndexDate) quando non è impostato alcun FormatIndex esplicito
FormatIndexIndice in xl/styles.xmlcellXfs Lasciare a 0 per lo stile predefinito. L'indice 1 è riservato al formato data integrato (numFmtId 14, m/d/yyyy). Quando impostato, FormatIndex ha la precedenza su FontIndex nella cella emessa
FontIndexIndice in base 1 in TXLSXWorkbook.Fonts Lasciare a 0 per ereditare il font Calibri 11 predefinito
FillIndexIndice in base 1 in TXLSXWorkbook.Fills Vedere TXLSXFill
BorderIndexIndice in base 1 in TXLSXWorkbook.Borders Vedere TXLSXBorder
NumberFormatIndexIndice in base 1 in TXLSXWorkbook.NumberFormats Utilizzare questo parametro per codici di formato personalizzati come '$#,##0.00' o 'yyyy-mm-dd hh:mm:ss'
NumberFormatProprietà di praticità per il testo di formato numerico personalizzato La lettura restituisce il codice di formato dal pool di formati numerici della cartella di lavoro quando NumberFormatIndex punta a uno di essi; l'assegnazione di una stringa trova o aggiunge il formato e aggiorna NumberFormatIndex
AlignmentIndexIndice in base 1 in TXLSXWorkbook.Alignments Vedere TXLSXAlignment per le opzioni di allineamento orizzontale / verticale / a capo / rientro / rotazione di ogni voce
RichTextPayload TXLSXRichText proprietario opzionale Quando impostato, la cella passa attraverso la tabella delle stringhe condivise come voce <si> multi-run invece di una stringa semplice; l'assegnazione di nil ripristina il valore Variant della cella
PrecedenceQuando vengono impostate diverse proprietà *Index sulla stessa cella, il lato SaveAs sceglie il cellXf corrispondente in questo ordine: FormatIndex > FontIndex > FillIndex > BorderIndex > NumberFormatIndex
FormulaTesto della formula opzionale (senza =iniziale) Quando impostato, SaveAs emette un elemento figlio <f> accanto al valore della cella, e Open lo rilegge
ProtectionIndexIndice nel pool di protezione della cartella di lavoro. Le proprietà di praticità Locked e FormulaHidden mantengono automaticamente questo indice per l'uso comune
LockedQuando è True (predefinito per ogni nuova cella), la cella è protetta quando il foglio di lavoro è protetto. Impostare su False per consentire la modifica di una cella specifica all'interno di un foglio protetto. Scrive un attributo <protection locked="0"/> all'interno del cellXf della cella quando differisce da quello predefinito
FormulaHiddenQuando è True, la barra delle formule non mostra la formula della cella mentre il foglio è protetto. Il valore predefinito è False. Emette <protection hidden="1"/> nel cellXf
FormattedTextcorrispondente
TaggedTextWideString in sola lettura. Restituisce il valore della cella formattato come stringa in base al suo codice di formato numerico attivo, personalizzato o integrato
NamedStyleXfIdRead-only Integer. Returns the cellXfs indice dello stile denominato a cui questa cella è collegata, oppure -1 when the cell has no style payload
LinkedStyleRead/write TXLSXLinkedStyle record. Collega la cella a uno stile denominato: AutomaticChoose lascia scegliere lo stile automaticamente a Excel e LinkedParts WideString in sola lettura. Restituisce la stringa formattata della cella contenente tag di formattazione simili a HTML/XML per gli stili di testo formattato (rich text) quando applicabile

Dichiarazione di TXLSXCells

type
  TXLSXCells = class
    constructor Create(AOwnerSheet: TXLSXWorksheet);
    destructor Destroy; override;
    procedure Clear;
    function HasCell(ARow, ACol: Integer): Boolean;
    function Remove(ARow, ACol: Integer): Boolean;
    property Item[ARow, ACol: Integer]: TXLSXCell; default;
    property Count: Integer;
    property CellByIndex[Index: Integer]: TXLSXCell;
  end;
      

Membri di TXLSXCells

CreateCostruisce una raccolta di celle associata a un foglio di lavoro proprietario
DestroyRilascia tutte le celle possedute dalla raccolta
Item[Row, Col]Restituisce la cella alle coordinate in base 1 fornite, creando un TXLSXCell vuoto al primo accesso. Dichiarata come proprietà predefinita in modo che Cells[Row, Col] funzioni come scorciatoia
CountNumero di celle attualmente memorizzate
CellByIndex[i]Cella all'indice di inserimento in base 0 fornito. Utile per l'enumerazione sequenziale senza previa conoscenza delle righe e delle colonne popolate
RemoveElimina una cella esistente alla coordinata e restituisce se la rimozione è effettivamente avvenuta
HasCell(Row, Col)Restituisce True se esiste già una cella alle coordinate fornite. Utilizzare questo metodo per evitare di creare una cella vuota come effetto collaterale di Item[Row, Col]
ClearRimuove e libera ogni cella nella raccolta

Esempio

var
  ws: TXLSXWorksheet;
  i: Integer;
begin
  ws := Workbook.Sheets.Add('Demo');

  ws.Cells.Item[1, 1].Value := 'Hello';
  ws.Cells.Item[1, 2].Value := 123.45;
  ws.Cells.Item[2, 1].Value := Now;             // renders as a date
  ws.Cells.Item[2, 2].Formula := 'SUM(B1:B1)';

  for i := 0 to ws.Cells.Count - 1 do
    WriteLn(ws.Cells.CellByIndex[i].Row, ',',
            ws.Cells.CellByIndex[i].Col);
end;
    

Vedere anche