翻譯|使用教程|編輯:吉煒煒|2024-12-17 14:43:09.867|閱讀 151 次
概述:在處理電子表格時,尤其是在專業和數據導向型環境中,正確設置 Excel 單元格內的數字格式至關重要。本文將介紹如何使用 Spire.XLS for Java 設置 Excel 單元格的數字格式,幫助輕松創建精美且結構清晰的電子表格。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
在處理電子表格時,尤其是在專業和數據導向型環境中,正確設置 Excel 單元格內的數字格式至關重要。恰當的數字格式不僅能讓信息展示更加清晰和一致,還能根據其用途(如財務數據、百分比、日期或科學數值)確保其表現形式與數據性質相符。利用 Java 進行 Excel 任務自動化,程序化地設定合適的數字格式,能有效提升工作效率,降低出錯幾率,并增強報表或儀表盤的易讀性。本文將介紹如何使用 Spire.XLS for Java 設置 Excel 單元格的數字格式,幫助輕松創建精美且結構清晰的電子表格。
安裝 Spire.XLS for Java
首先,您需要在 Java 程序中添加 Spire.Xls.jar 文件作為依賴項。JAR 文件可以從此鏈接下載。 如果您使用 Maven,則可以將以下代碼添加到項目的 pom.xml 文件中,從而輕松地在應用程序中導入 JAR 文件。
<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url>//repo.e-iceblue.cn/repository/maven-public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.xls</artifactId>
        <version>14.12.0</version>
    </dependency>
</dependencies>
用 Java 設置 Excel 單元格的數字格式
Spire.XLS for Java 為開發者提供了 CellRange.setNumberFormat() 方法,允許開發者使用 Excel 的數字格式代碼為單元格設置數字顯示格式。下表列出了 Excel 數字格式代碼中常用的符號及其功能:
 
 
使用 Java 設置 Excel 單元格數字格式的詳細步驟如下:
import com.spire.xls.*;
public class SetNumberFormat {
    public static void main(String[] args) {
        // 創建一個新的工作簿實例
        Workbook workbook = new Workbook();
        // 獲取第一個工作表
        Worksheet sheet = workbook.getWorksheets().get(0);
        // 添加標題
        sheet.getCellRange("B1").setText("數字格式");
        sheet.getCellRange("B1").getCellStyle().getExcelFont().isBold(true);
        sheet.getCellRange("B1").getCellStyle().getExcelFont().setFontName("HarmonyOS Sans SC");
        sheet.getCellRange("B1:C1").merge();
        sheet.getCellRange("B1:C1").setHorizontalAlignment(HorizontalAlignType.Center);
        // 添加數字格式示例及對應的值
        // 添加正數格式示例
        addNumberFormatExample(sheet, "B3", "C3", "0", "1234.5678"); // 格式為整數
        addNumberFormatExample(sheet, "B4", "C4", "0.00", "1234.5678"); // 格式為保留兩位小數
        addNumberFormatExample(sheet, "B5", "C5", "#,##0.00", "1234.5678"); // 格式為帶千位分隔符且保留兩位小數
        addNumberFormatExample(sheet, "B6", "C6", "$#,##0.00", "1234.5678"); // 格式為貨幣格式
        // 添加負數格式示例
        addNumberFormatExample(sheet, "B7", "C7", "0;[Red]-0", "-1234.5678"); // 格式為負數用紅色顯示
        addNumberFormatExample(sheet, "B8", "C8", "0.00;[Red]-0.00", "-1234.5678"); // 格式為保留兩位小數,負數用紅色顯示
        // 添加科學計數法和百分比格式示例
        addNumberFormatExample(sheet, "B9", "C9", "0.00E+00", "1234.5678"); // 格式為科學計數法
        addNumberFormatExample(sheet, "B10", "C10", "0.00%", "0.5678"); // 格式為百分比
        // 添加日期和時間格式示例
        addNumberFormatExample(sheet, "B11", "C11", "yyyy-MM-dd", "44930.0"); // Excel 日期值對應 2023-01-01
        addNumberFormatExample(sheet, "B12", "C12", "HH:mm:ss", "0.75"); // Excel 時間值對應 18:00:00
        // 添加文本格式示例
        addNumberFormatExample(sheet, "B13", "C13", "@", "文本示例"); // 格式為文本
        // 設置格式
        sheet.getCellRange("B3:B13").getCellStyle().setKnownColor(ExcelColors.Gray25Percent);
        sheet.getCellRange("C3:C13").getCellStyle().setKnownColor(ExcelColors.Gray50Percent);
        sheet.setColumnWidth(2, 24);
        sheet.setColumnWidth(3, 24);
        // 將工作簿保存到文件
        workbook.saveToFile("output/設置Excel單元格數字格式.xlsx", FileFormat.Version2016);
        workbook.dispose();
    }
    /**
     * 向工作表指定的單元格中添加數字格式示例
     *
     * @param sheet        要修改的工作表
     * @param textCell     顯示數字格式字符串的單元格
     * @param valueCell    顯示格式化值的單元格
     * @param format       數字格式代碼
     * @param value        要格式化的數值
     */
    private static void addNumberFormatExample(Worksheet sheet, String textCell, String valueCell, String format, String value) {
        sheet.getCellRange(textCell).setText(format); // 顯示數字格式代碼
        sheet.getCellRange(valueCell).setValue(value); // 添加數值
        // sheet.getCellRange(valueCell).setNumberValue(Double); // 或者使用 setNumberValue() 方法設置數值
        sheet.getCellRange(valueCell).setNumberFormat(format); // 應用數字格式
    }
}
 
 
用 Java 在 Excel 單元格中添加帶數字格式的值
Spire.XLS for Java 支持通過 CellRange 類下的方法直接將帶有特定數字格式的數據添加到 Excel 單元格中。下表概述了將帶有常見數字格式的數據添加到單元格的方法及其描述:
 
 
向 Excel 單元格添加帶數字格式的值的詳細步驟如下:
import com.spire.xls.*;
import java.util.Calendar;
import java.util.Date;
public class AddFormattedDataExcel {
    public static void main(String[] args) {
        // 創建一個新的工作簿實例
        Workbook workbook = new Workbook();
        // 獲取第一個工作表
        Worksheet sheet = workbook.getWorksheets().get(0);
        // 添加文本值
        sheet.getCellRange("C3").setText("示例文本");
        // 添加數值
        sheet.getCellRange("C4").setNumberValue(1234.5678);
        // 添加布爾值
        sheet.getCellRange("C5").setBooleanValue(true);
        // 添加日期時間值
        sheet.getCellRange("C6").setDateTimeValue(new Date(2024, Calendar.DECEMBER, 12));
        // 添加 HTML 字符串
        sheet.getCellRange("C7").setHtmlString("加粗文本");
        // 格式化單元格
        sheet.getCellRange("C3:C7").setHorizontalAlignment(HorizontalAlignType.Center);
        sheet.getCellRange("C3:C7").setVerticalAlignment(VerticalAlignType.Center);
        sheet.getCellRange("C3:C7").getCellStyle().getExcelFont().setSize(14);
        for (int i = 3; i <= 7; i++) {
            sheet.autoFitColumn(i);
        }
        // 保存工作簿
        workbook.saveToFile("output/添加帶數字格式的值到Excel.xlsx", FileFormat.Version2016);
        workbook.dispose();
    }
}
 
歡迎下載|體驗更多E-iceblue產品
獲取更多信息請咨詢慧都在線客服 ;技術交流Q群(767755948)
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@ke049m.cn
文章轉載自:慧都網