Mise en forme des Smart Markers

Copier l’attribut de style

Parfois, lors de l’utilisation de smart markers, vous souhaitez copier le style de la cellule contenant les balises de smart marker. Vous pouvez utiliser l’attribut CopyStyle des balises de Smart Marker à cette fin.

Copier les styles des cellules avec les marqueurs intelligents

Cet exemple utilise un fichier Microsoft Excel modèle simple avec deux marqueurs dans les cellules A2 et B2. Le marqueur collé dans la cellule B2 utilise l’attribut CopyStyle, tandis que le marqueur dans la cellule A2 ne le fait pas. Appliquez une mise en forme simple (par exemple, définissez la couleur de police en rouge et définissez la couleur de fond de la cellule en jaune).

Cet exemple utilise un fichier modèle avec quelques marqueurs dans les cellules. Lors de l’exécution du code, Aspose.Cells copie la mise en forme à tous les enregistrements de la colonne B mais ne conserve pas la mise en forme dans la colonne A.

public class CopyStyleData
{
private int year;
private String date;
public CopyStyleData(int year, String date)
{
this.year = year;
this.date = date;
}
public int getYear()
{
return year;
}
public void setYear(int year)
{
this.year = year;
}
public String getDate()
{
return date;
}
public void setDate(String date)
{
this.date = date;
}
}
List<CopyStyleData> dataList = new ArrayList<>();
dataList.add(new CopyStyleData(2010, "13/9/2010"));
dataList.add(new CopyStyleData(2010, "14/9/2010"));
dataList.add(new CopyStyleData(2009, "13/9/2009"));
dataList.add(new CopyStyleData(2009, "14/9/2009"));
dataList.add(new CopyStyleData(2009, "15/9/2009"));
dataList.add(new CopyStyleData(2010, "13/9/2010"));
dataList.add(new CopyStyleData(2010, "14/9/2010"));
dataList.add(new CopyStyleData(2010, "15/9/2010"));
dataList.add(new CopyStyleData(2009, "13/9/2009"));
dataList.add(new CopyStyleData(2009, "14/9/2009"));
// Instantiate the workbook from a template file that contains Smart Markers
Workbook book = new Workbook("template1.xlsx");
// Instantiate a new WorkbookDesigner
WorkbookDesigner designer = new WorkbookDesigner();
// Specify the workbook to the designer book
designer.setWorkbook(book);
// Set the data source
designer.setDataSource("DataList", dataList);
// Process the smart markers
designer.process(false);
// Save the Excel file
book.save("output_java.xlsx", SaveFormat.XLSX);

Ajout de Libellés Personnalisés

Introduction

Lorsque vous travaillez avec la fonction de regroupement des données des marqueurs intelligents, parfois vous avez besoin d’ajouter vos propres libellés personnalisés à la ligne de récapitulatif. Vous souhaitez également concaténer le nom de la colonne avec ce libellé, par exemple “Sous-total des commandes”. Aspose.Cells vous fournit les attributs Label et LabelPosition, afin que vous puissiez placer vos libellés personnalisés dans les marqueurs intelligents tout en les concaténant avec les lignes de sous-total dans les données de regroupement.

Ajout de libellés personnalisés pour concaténer les lignes de sous-total dans les marqueurs intelligents

Cet exemple utilise un fichier modèle avec quelques marqueurs dans les cellules. Lors de l’exécution du code, Aspose.Cells ajoute quelques libellés personnalisés aux lignes de résumé pour les données groupées.

public class Report
{
private int year;
private String date;
private String assetClass;
private int reportedCost;
private int assessedValue;
public Report(int year, String date, String assetClass, int reportedCost, int assessedValue)
{
this.year = year;
this.date = date;
this.assetClass = assetClass;
this.reportedCost = reportedCost;
this.assessedValue = assessedValue;
}
public int getYear()
{
return year;
}
public void setYear(int year)
{
this.year = year;
}
public String getDate()
{
return date;
}
public void setDate(String date)
{
this.date = date;
}
public String getAssetClass()
{
return assetClass;
}
public void setAssetClass(String assetClass)
{
this.assetClass = assetClass;
}
public int getReportedCost()
{
return reportedCost;
}
public void setReportedCost(int reportedCost)
{
this.reportedCost = reportedCost;
}
public int getAssessedValue()
{
return assessedValue;
}
public void setAssessedValue(int assessedValue)
{
this.assessedValue = assessedValue;
}
}
List<Report> reportList = new ArrayList<>();
reportList.add(new Report(2010, "13/9/2010", "Fast Food Equipment", 400,160));
reportList.add(new Report(2010, "14/9/2010", "Fast Food Equipment", 800,1280));
reportList.add(new Report(2009, "13/9/2009", "Fast Food Equipment", 300, 90));
reportList.add(new Report(2009, "14/9/2009", "Fast Food Equipment", 600, 720));
reportList.add(new Report(2009, "15/9/2009", "Fast Food Equipment", 900, 2430));
reportList.add(new Report(2010, "13/9/2010", "Inventory", 100, 10));
reportList.add(new Report(2010, "14/9/2010", "Inventory", 200, 80));
reportList.add(new Report(2010, "15/9/2010", "Inventory", 300, 270));
reportList.add(new Report(2009, "13/9/2009", "Inventory", 200, 40));
reportList.add(new Report(2009, "14/9/2009", "Inventory", 400, 320));
// Instantiate the workbook from a template file that contains Smart Markers
Workbook book = new Workbook("template.xlsx");
// Instantiate a new WorkbookDesigner
WorkbookDesigner designer = new WorkbookDesigner();
// Specify the workbook to the designer book
designer.setWorkbook(book);
// Set the data source
designer.setDataSource("Report", reportList);
// Process the smart markers
designer.process();
// Save the Excel file
book.save("output_java.xlsx", SaveFormat.XLSX);