English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Metodo per creare gruppi multipli in Excel in C#

In Excel, se è possibile raggruppare i dati con dettagli multi-livello e visualizzarli, è possibile mostrare chiaramente la struttura complessiva del foglio di calcolo, rendendo il documento avere una certa gerarchia. Secondo le necessità, impostare la visualizzazione o la mascheramento dei dettagli delle classificazioni, sia comodo per la visualizzazione e la gestione dei dati, sia rendere il documento più bello. Allora, come creare una visualizzazione a raggruppamento multi-livello dei dati Excel in C#? Di seguito si spiegherà in dettaglio. Il metodo utilizza il componente gratuitoFree Spire.XLS for .NET,scaricare e installare questo componente, creare un'applicazione console, aggiungere il file dll del pacchetto di installazione del componente al progetto, e aggiungere la namespace corrispondente. Di seguito sono riportati i passaggi dettagliati del codice, per riferimento.

Passaggio uno:Creare un oggetto della classe Workbook per ottenere la prima scheda

Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];

Passaggio due:Inserire dati nella cella

sheet.Range["A1"].Value = "公司部门";
sheet.Range["A3"].Value = "综合部";
sheet.Range["A4"].Value = "行政";
sheet.Range["A5"].Value = "人事";
sheet.Range["A6"].Value = "市场部";
sheet.Range["A7"].Value = "业务部";
sheet.Range["A8"].Value = "客服部";
sheet.Range["A9"].Value = "技术部";
sheet.Range["A10"].Value = "技术开发";
sheet.Range["A11"].Value = "技术支持";
sheet.Range["A12"].Value = "售前支持";
sheet.Range["A13"].Value = "售后支持";

Passaggio tre:Impostare l'attributo IsSummaryRowBelow su false, quindi la riga di riassunto viene visualizzata sopra la riga dettagliata

sheet.PageSetup.IsSummaryRowBelow = false;

Passaggio quattro:Selezionare le righe per il raggruppamento, il parametro false indica di espandere la分组 attuale, se necessario nascondere, impostare su true

//选择行进行一级分组
sheet.GroupByRows(2, 13, false);
//选择行进行二级分组
sheet.GroupByRows(4,5 , false);
sheet.GroupByRows(7, 8, false);
sheet.GroupByRows(10,13 , false);
//选择行进行三级分组
sheet.GroupByRows(12,13, true);

Passaggio cinque:Definire un oggetto CellStyle, impostare e applicare il formato al font della cella

CellStyle style = workbook.Styles.Add("style");
style.Font.IsBold = true;
style.Color = Color.LawnGreen;
sheet.Range["A1"].CellStyleName = style.Name;
sheet.Range["A3"].CellStyleName = style.Name;
sheet.Range["A6"].CellStyleName = style.Name;
sheet.Range["A9"].CellStyleName = style.Name;

Passaggio sei:Impostare lo stile di bordo dell'area

sheet.Range["A4:A5"].BorderAround(LineStyleType.Thin);
sheet.Range["A4:A5"].BorderInside(LineStyleType.Thin);
sheet.Range["A7:A8"].BorderAround(LineStyleType.Thin);
sheet.Range["A7:A8"].BorderInside(LineStyleType.Thin);
sheet.Range["A10:A13"].BorderAround(LineStyleType.Thin);
sheet.Range["A10:A13"].BorderInside(LineStyleType.Thin);

Passaggio sette:Salvare il documento

workbook.SaveToFile("output.xlsx", ExcelVersion.Version2013);

Esegui il programma per generare il documento (puoi trovare il documento nella cartella bin>Debug del progetto)

Mostra dell'effetto:

Tutto il codice:

using System;
using System.Drawing;
using Spire.Xls;
namespace MultilevelGroup_XLS
{
 class Program
 {
  static void Main(string[] args)
  {
   //Creare un oggetto della classe Workbook per ottenere la prima scheda
   Workbook workbook = new Workbook();
   Worksheet sheet = workbook.Worksheets[0];
   //Inserire dati nella cella
   sheet.Range["A1"].Value = "公司部门";
   sheet.Range["A3"].Value = "综合部";
   sheet.Range["A4"].Value = "行政";
   sheet.Range["A5"].Value = "人事";
   sheet.Range["A6"].Value = "市场部";
   sheet.Range["A7"].Value = "业务部";
   sheet.Range["A8"].Value = "客服部";
   sheet.Range["A9"].Value = "技术部";
   sheet.Range["A10"].Value = "技术开发";
   sheet.Range["A11"].Value = "技术支持";
   sheet.Range["A12"].Value = "售前支持";
   sheet.Range["A13"].Value = "售后支持";
   //设置IsSummaryRowBelow为false, 即总结行显示在明细行上方
   sheet.PageSetup.IsSummaryRowBelow = false;
   //选择行进行一级分组
   //参数false表示展开当前分组,若要隐藏设置成true
   sheet.GroupByRows(2, 13, false);
   //选择行进行二级分组
   sheet.GroupByRows(4,5 , false);
   sheet.GroupByRows(7, 8, false);
   sheet.GroupByRows(10,13 , false);
   //选择行进行三级分组
   sheet.GroupByRows(12,13, true);
   //定义一个CellStyle对象,设置并应用单元格内字体格式
   CellStyle style = workbook.Styles.Add("style");
   style.Font.IsBold = true;
   style.Color = Color.LawnGreen;
   sheet.Range["A1"].CellStyleName = style.Name;
   sheet.Range["A3"].CellStyleName = style.Name;
   sheet.Range["A6"].CellStyleName = style.Name;
   sheet.Range["A9"].CellStyleName = style.Name;
   //Impostazione dello stile dei bordi della regione
   sheet.Range["A4:A5"].BorderAround(LineStyleType.Thin);
   sheet.Range["A4:A5"].BorderInside(LineStyleType.Thin);
   sheet.Range["A7:A8"].BorderAround(LineStyleType.Thin);
   sheet.Range["A7:A8"].BorderInside(LineStyleType.Thin);
   sheet.Range["A10:A13"].BorderAround(LineStyleType.Thin);
   sheet.Range["A10:A13"].BorderInside(LineStyleType.Thin);
   //Salvataggio del documento
   workbook.SaveToFile("output.xlsx", ExcelVersion.Version2013);
   System.Diagnostics.Process.Start("output.xlsx");
  }
 }
}

Ecco tutti i passaggi di configurazione per il raggruppamento multlivello di Excel.

Questo è tutto il contenuto dell'articolo, speriamo che sia utile per la tua apprendimento e che tu sostenga fortemente la guida urla.

Dichiarazione: il contenuto di questo articolo è stato tratto da Internet, il copyright è dell'autore originale, il contenuto è stato contribuito e caricato autonomamente dagli utenti di Internet, questo sito non detiene i diritti di proprietà, non è stato elaborato manualmente e non assume alcuna responsabilità legale. Se trovi contenuti sospetti di violazione del copyright, ti preghiamo di inviare una e-mail a: notice#oldtoolbag.com (al momento dell'invio dell'e-mail, sostituisci # con @) per segnalare il problema e fornire prove pertinenti. Una volta verificata, questo sito eliminerà immediatamente il contenuto sospetto di violazione del copyright.

Ti potrebbe interessare