🌐Vue 3 + Vite 匯出 Excel 中文欄位教學|串接 .NET Core API

Vue 3 + .NET API 匯出 Excel 表格(中文欄位)完整教學

本篇文章介紹如何透過 Vue 3 前端搭配 Vite 開發工具,串接 ASP.NET Core 後端 API,取得資料並顯示為表格,最終導出為 Excel。此教學特別強調:

  • ✔️ 資料顯示為中文欄位
  • ✔️ 表格樣式符合群創標準
  • ✔️ 支援 Excel 匯出功能

📊 表格效果(仿群創光電樣式)

計畫版本 急單編號 需求日期 需求數量
20250122A UC202501-014 2025-02-17 1,000
20250122A UC202501-014 2025-02-18 2,000

💻 前端匯出 Excel 程式碼

// Vue3 匯出 Excel(保留中文欄位名稱)
const exportToExcel = () => {
  if (tableData.value.length === 0) {
    alert('沒有數據可導出');
    return;
  }

  // 使用 aoa_to_sheet 手動指定表頭順序
  const headers = ["計畫版本", "急單編號", "需求日期", "需求數量"];
  const bodyRows = tableData.value.map(row => [
    row["計畫版本"], row["急單編號"], row["需求日期"], row["需求數量"]
  ]);

  const worksheet = XLSX.utils.aoa_to_sheet([headers, ...bodyRows]);
  const workbook = XLSX.utils.book_new();
  XLSX.utils.book_append_sheet(workbook, worksheet, "供應鏈計劃數據");

  const buffer = XLSX.write(workbook, { bookType: "xlsx", type: "array" });
  const blob = new Blob([buffer], {
    type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
  });

  saveAs(blob, `供應鏈計劃數據_${selectedVersion.value}.xlsx`);
};

🔧 關鍵欄位對應

以下是英文欄位對應的中文標題表:

  • APS_VERSION ➜ 計畫版本
  • DOC_NO ➜ 急單編號
  • DEMAND_DATE ➜ 需求日期
  • DEMAND_QTY ➜ 需求數量

🎯 結語

本篇文章示範如何使用 Vue3 + Axios 取得 .NET API 的資料,轉為中文表格後匯出成 Excel,是製造業、ERP、MES 系統常見需求。透過 `XLSX` 套件與 `file-saver`,就能完成業界等級的資料匯出功能。

若您想要取得完整 GitHub 範例,或在開發上遇到困難,歡迎留言交流 👍

留言

這個網誌中的熱門文章

🛠【ASP.NET Core + Oracle】解決 ORA-00904 "FALSE": 無效的 ID 錯誤與資料欄位動態插入顯示問題

🛠【實戰排除教學】從 VS Code 的 _logger 錯誤,到 PowerShell 找不到 npm/serve,再到 Oracle ORA-03135 連線中斷——一次搞懂!

🔎如何在 Oracle PL/SQL 儲存過程中為文字欄位加入換行符號(CHR(10))——以 Updlcmremark 為例