Creare e formattare una tabella

Creare una tabella

Uno dei vantaggi dei fogli di calcolo è che consentono di creare diversi tipi di elenchi, ad esempio elenchi telefonici, elenchi delle attività, elenchi di transazioni, attivi o passivi. Diversi utenti possono lavorare insieme per utilizzare, creare e mantenere vari elenchi.

Aspose.Cells supporta la creazione e la gestione di elenchi.

Vantaggi di un oggetto elenco

Ci sono diversi vantaggi quando si converte un elenco di dati in un vero oggetto elenco

  • Nuove righe e colonne vengono automaticamente incluse.
  • Una riga di totale in fondo al tuo elenco può essere facilmente aggiunta per visualizzare SOMMA, MEDIA, CONTEGGIO, ecc.
  • Le colonne aggiunte a destra vengono automaticamente incorporate nell’oggetto Elenco.
  • I grafici basati su righe e colonne verranno espansi automaticamente.
  • I nomi definiti assegnati a righe e colonne verranno espansi automaticamente.
  • L’elenco è protetto dalla cancellazione accidentale di righe e colonne.

Creazione di un oggetto elenco utilizzando Microsoft Excel

Selezione del intervallo di dati per la creazione dell’oggetto Lista
todo:image_alt_text
Questo visualizza il dialogo Crea elenco.
Dialogo Crea Lista
todo:image_alt_text
Implementazione dell’oggetto List per i dati e specifica della riga totale (Selezionare Dati, poi Lista, seguito da Riga Totale).
Creazione di un oggetto lista
todo:image_alt_text

Utilizzando l’API di Aspose.Cells

Aspose.Cells fornisce una classe Workbook che rappresenta un file Microsoft Excel. La classe Workbook contiene una collezione Worksheets che permette l’accesso a ogni foglio di lavoro in un file Excel.

Un foglio di lavoro è rappresentato dalla classe Worksheet. La classe Worksheet offre un’ampia gamma di metodi per gestire un foglio di lavoro. Per creare un ListObject in un foglio di lavoro, utilizza il metodo GetListObjects della classe Worksheet. Ogni [ListObject] è in realtà un oggetto della classe ListObjectCollection, che fornisce ulteriormente il metodo Add per aggiungere un oggetto [ListObject] e specificare un intervallo di celle per la lista.

Secondo l’intervallo di celle specificato, l’oggetto [ListObject] viene creato da Aspose.Cells. Usa gli attributi (ad esempio SetShowTotals e GetListColumns etc.) della classe [ListObject] per controllare la lista.

Nell’esempio riportato di seguito, abbiamo creato lo stesso [ListObject] utilizzando l’API Aspose.Cells come abbiamo creato utilizzando Microsoft Excel nella sezione precedente.

workbook, _ := NewWorkbook_String("book1.xls")
worksheets, _ := workbook.GetWorksheets()
worksheet, _ := worksheets.Get_Int(0)
listObjects, _ := worksheet.GetListObjects()
index, _ := listObjects.Add_Int_Int_Int_Int_Bool(1, 1, 7, 5, true)
listObject, _ := listObjects.Get_Int(index)
listObject.SetTableStyleType(TableStyleType_TableStyleMedium10)
listObject.SetShowTotals(true)
workbook.Save_String("CreatingListObjects_out.xlsx")

Formattare una tabella

Per gestire ed analizzare un gruppo di dati correlati, è possibile trasformare un intervallo di celle in un oggetto lista (noto anche come tabella Excel). Una tabella è una serie di righe e colonne che contengono dati correlati gestiti in modo indipendente dai dati in altre righe e colonne. Per impostazione predefinita, ogni colonna nella tabella ha abilitato il filtro nella riga dell’intestazione in modo da poter filtrare o ordinare rapidamente i dati della lista. È possibile aggiungere una riga totale (una riga speciale in una lista che fornisce una selezione di funzioni aggregate utili per lavorare con dati numerici) all’oggetto lista che fornisce un elenco a discesa di funzioni aggregate per ciascuna cella di riga totale. Aspose.Cells fornisce opzioni per creare e gestire liste (o tabelle).

Formattazione di un oggetto elenco

Aspose.Cells fornisce una classe Workbook che rappresenta un file Microsoft Excel. La classe Workbook contiene una collezione Worksheets che permette l’accesso a ogni foglio di lavoro in un file Excel.

Una scheda di lavoro è rappresentata dalla classe Worksheet. La classe Worksheet offre una vasta gamma di metodi per la gestione dei fogli di lavoro. Per creare un ListObject in un foglio di lavoro, utilizza ListObjectCollection. Ogni [ListObject] è in realtà un oggetto della classe ListObjectCollection, che fornisce inoltre il metodo Add per aggiungere un oggetto [ListObject] e specificare l’intervallo di celle che dovrebbe coprire. In base all’intervallo di celle specificato, Aspose.Cells crea un ListObject nel foglio di lavoro. Usa attributi (ad esempio, SetTableStyleType) della classe [ListObject] per formattare la tabella secondo le tue esigenze.

Nell’esempio sottostante vengono aggiunti dati di esempio a un foglio di lavoro, viene aggiunto un [ListObject] e vengono applicati stili predefiniti ad esso. Gli stili [ListObject] sono supportati da Microsoft Excel 2007/2010.

workbook, _ := NewWorkbook()
worksheets, _ := workbook.GetWorksheets()
worksheet, _ := worksheets.Get_Int(0)
cells, _ := worksheet.GetCells()
set_cell_string_value(cells, "A1", "Employee")
set_cell_string_value(cells, "B1", "Quarter")
set_cell_string_value(cells, "C1", "Product")
set_cell_string_value(cells, "D1", "Continent")
set_cell_string_value(cells, "E1", "Country")
set_cell_string_value(cells, "F1", "Sale")
set_cell_string_value(cells, "A2", "David")
set_cell_string_value(cells, "A3", "David")
set_cell_string_value(cells, "A4", "David")
set_cell_string_value(cells, "A5", "David")
set_cell_string_value(cells, "A6", "James")
set_cell_string_value(cells, "A7", "James")
set_cell_string_value(cells, "A8", "James")
set_cell_string_value(cells, "A9", "James")
set_cell_string_value(cells, "A10", "James")
set_cell_string_value(cells, "A11", "Miya")
set_cell_string_value(cells, "A12", "Miya")
set_cell_string_value(cells, "A13", "Miya")
set_cell_string_value(cells, "A14", "Miya")
set_cell_string_value(cells, "A15", "Miya")
set_cell_int_value(cells, "B2", 1)
set_cell_int_value(cells, "B3", 2)
set_cell_int_value(cells, "B4", 3)
set_cell_int_value(cells, "B5", 4)
set_cell_int_value(cells, "B6", 1)
set_cell_int_value(cells, "B7", 2)
set_cell_int_value(cells, "B8", 3)
set_cell_int_value(cells, "B9", 4)
set_cell_int_value(cells, "B10", 4)
set_cell_int_value(cells, "B11", 1)
set_cell_int_value(cells, "B12", 1)
set_cell_int_value(cells, "B13", 2)
set_cell_int_value(cells, "B14", 2)
set_cell_int_value(cells, "B15", 2)
set_cell_string_value(cells, "C2", "Maxilaku")
set_cell_string_value(cells, "C3", "Maxilaku")
set_cell_string_value(cells, "C4", "Chai")
set_cell_string_value(cells, "C5", "Maxilaku")
set_cell_string_value(cells, "C6", "Chang")
set_cell_string_value(cells, "C7", "Chang")
set_cell_string_value(cells, "C8", "Chang")
set_cell_string_value(cells, "C9", "Chang")
set_cell_string_value(cells, "C10", "Chang")
set_cell_string_value(cells, "C11", "Geitost")
set_cell_string_value(cells, "C12", "Chai")
set_cell_string_value(cells, "C13", "Geitost")
set_cell_string_value(cells, "C14", "Geitost")
set_cell_string_value(cells, "C15", "Geitost")
set_cell_string_value(cells, "D2", "Asia")
set_cell_string_value(cells, "D3", "Asia")
set_cell_string_value(cells, "D4", "Asia")
set_cell_string_value(cells, "D5", "Asia")
set_cell_string_value(cells, "D6", "Europe")
set_cell_string_value(cells, "D7", "Europe")
set_cell_string_value(cells, "D8", "Europe")
set_cell_string_value(cells, "D9", "Europe")
set_cell_string_value(cells, "D10", "Europe")
set_cell_string_value(cells, "D11", "America")
set_cell_string_value(cells, "D12", "America")
set_cell_string_value(cells, "D13", "America")
set_cell_string_value(cells, "D14", "America")
set_cell_string_value(cells, "D15", "America")
set_cell_string_value(cells, "E2", "China")
set_cell_string_value(cells, "E3", "India")
set_cell_string_value(cells, "E4", "Korea")
set_cell_string_value(cells, "E5", "India")
set_cell_string_value(cells, "E6", "France")
set_cell_string_value(cells, "E7", "France")
set_cell_string_value(cells, "E8", "Germany")
set_cell_string_value(cells, "E9", "Italy")
set_cell_string_value(cells, "E10", "France")
set_cell_string_value(cells, "E11", "U.S.")
set_cell_string_value(cells, "E12", "U.S.")
set_cell_string_value(cells, "E13", "Brazil")
set_cell_string_value(cells, "E14", "U.S.")
set_cell_string_value(cells, "E15", "U.S.")
set_cell_int_value(cells, "F2", 2000)
set_cell_int_value(cells, "F3", 500)
set_cell_int_value(cells, "F4", 1200)
set_cell_int_value(cells, "F5", 1500)
set_cell_int_value(cells, "F6", 500)
set_cell_int_value(cells, "F7", 1500)
set_cell_int_value(cells, "F8", 800)
set_cell_int_value(cells, "F9", 900)
set_cell_int_value(cells, "F10", 500)
set_cell_int_value(cells, "F11", 1600)
set_cell_int_value(cells, "F12", 600)
set_cell_int_value(cells, "F13", 2000)
set_cell_int_value(cells, "F14", 500)
set_cell_int_value(cells, "F15", 900)
listObjects, _ := worksheet.GetListObjects()
index, _ := listObjects.Add_String_String_Bool("A1", "F15", true)
listObject, _ := listObjects.Get_Int(index)
listObject.SetShowHeaderRow(true)
listObject.SetTableStyleType(TableStyleType_TableStyleMedium10)
listObject.SetShowTotals(true)
workbook.Save_String("FormatTable_out.xlsx")
func set_cell_int_value(cells *Cells, cell_name string, value int32) {
cell, _ := cells.Get_String(cell_name)
cell.PutValue_Int(value)
}
func set_cell_string_value(cells *Cells, cell_name string, value string) {
cell, _ := cells.Get_String(cell_name)
cell.PutValue_String(value)
}