Microsoft Project (.MPP) 檔案儲存專案排程、資源和任務數據。許多團隊更喜歡使用 Excel (XLSX) 進行報告、進一步分析或與不使用 Microsoft Project 的利害關係者共享。將 MPP 轉換為 XLSX 可以使專案數據可存取,使在 Excel 中進行樞紐分析和圖表製作更加方便,並簡化報告流程。

在這篇文章中解釋了如何使用 .NET Cloud SDK 將 MPP 轉換為 XLSX 的詳細資訊——它包含從您的本地驅動器上傳文件、轉換已在雲端存儲中的 MPP 文件以及以程式化方式下載生成的 XLSX 文件的示例。


為什麼要將 MPP 轉換為 XLSX?

  • 更廣泛的相容性:Excel 檔案幾乎可以在每個平台上開啟。
  • 報告與分析:使用 Excel 的樞紐分析表和公式來分析排程和資源數據。
  • 檔案存檔與分享:XLSX 通常更容易存檔或附加到電子郵件中,而不需要 Project 授權。

先決條件

  1. 一個 Aspose Cloud account 和 App SID / App Key。 (在 Aspose Cloud Dashboard 註冊。)
  2. 在您的開發機器上安裝 .NET 6.0 或更高版本。
  3. Visual Studio / VS Code 和一個正常運作的網際網路連接。

安裝 .NET Cloud SDK

在您的專案中執行以下命令以添加 SDK 套件:

dotnet add package Aspose.Tasks-Cloud --version 25.7.0

將 MPP 轉換為 XLSX 使用 C# .NET

以下是一個完整的 C# 範例,演示:

  1. 初始化 TasksApi 客戶端,
  2. 上傳 MPP 檔案從本地磁碟,以及
  3. 將上傳的 MPP 轉換為 XLSX 並下載結果。

步驟 1 - 初始化 TasksApi 實例:

var tasksApi = new TasksApi(clientSecret, clientId);

步驟 2 - 上傳 MPP 到雲端儲存:

using (var fs = File.OpenRead(localMPPFile))
{
    var uploadRequest = new PostCreateRequest(remoteName, fs);
    tasksApi.UploadFile(uploadRequest);
}

步驟 3 - XLSX 匯出選項:

var formatRequest = new GetTaskDocumentWithFormatRequest()
{
    Name = remoteName,
    Format = ProjectFileFormat.Xlsx,
    ReturnAsZipArchive = false
};

步驟 4 - 將 MPP 匯出為 XLSX:

var result = tasksApi.GetTaskDocumentWithFormat(formatRequest);
// 如需更多範例,請造訪 https://github.com/aspose-tasks-cloud/aspose-tasks-cloud-dotnet

// 從 https://dashboard.aspose.cloud/ 獲取客戶端憑證
string clientSecret = "XXXXXXX";
string clientID = "XXXXX-XXXXXXXXX";

// 創建 TasksApi 類的實例
TasksApi tasksApi = new TasksApi(clientSecret, clientID);

// 輸入 MPP 檔案名稱
String inputFile = "Project_Plan.mpp";
// 結果 Excel 檔案的名稱
String resultant = "resultant.xlsx";

// input MPP file
using var stream = File.OpenRead(inputFile);
// 上傳文件到雲端儲存。
tasksApi.UploadFile(new Requests.PostCreateRequest("input.mpp", stream));

// 創建 MPP 檔案轉換請求
GetTaskDocumentWithFormatRequest formatRequest = new GetTaskDocumentWithFormatRequest()
{
    Format = ProjectFileFormat.Pdf,
    Name = inputFile,
    // do not save output as ZIP archive
    ReturnAsZipArchive = false
};

// 執行 MPP 轉換為 XLSX 並將輸出作為流實例返回
var output = tasksApi.GetTaskDocumentWithFormat(formatRequest);

// save output on local drive
using (var outFs = File.Create(outputXlsx))
{
    result.CopyTo(outFs);
}

✅ 提示:如果您已經將 MPP 文件儲存在雲端儲存中,請跳過上傳步驟並將 Name 設定為 MPP 文件的遠端路徑。

透過 cURL (REST) 將 MPP 匯出為 Excel

如果您更喜歡原始的 REST 呼叫,這裡是使用 cURL 的等效方法。這種方法在您希望自動化任務、與網路服務集成或在偏好使用 REST API 的環境中工作時也很有用。

第 1 步 - 獲取存取權杖:

curl -X POST "https://api.aspose.cloud/connect/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials&client_id=YOUR_APP_SID&client_secret=YOUR_APP_KEY"

步驟 2 - 將 MPP 轉換為 XLSX(下載結果)

curl -v -X GET "https://api.aspose.cloud/v3.0/tasks/{sourceMPP}/format?format=xlsx&returnAsZipArchive=false" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <JWT Token>" \
-o resultant.xlsx

{sourceMPP} 替換為雲端儲存中的 MPP 檔案名稱或路徑。


線上 MPP 轉 XLSX 轉換器

為了探索 REST API 在網頁瀏覽器中的驚人功能,請嘗試使用我們的 Free Online MPP to XLSX 轉換器應用程式。這個應用程式是基於 Aspose.Tasks Cloud 開發的,讓您可以體驗從 MPP 轉換到 Excel 而不需要撰寫一行代碼。

MPP 轉 Excel 轉換器

免費的線上 MPP 到 XLSX 轉換器。

最佳實踐與提示

  • 保留原始資料:在轉換之前備份原始 MPP。
  • 大型檔案:對於非常大的專案,考慮進行批次處理或伺服器端處理。
  • 檢查 Excel 輸出:轉換通常將任務映射到行;檢查自定義字段的列映射。
  • 在 CI/CD 中自動化:使用 API 在背景工作中將 MPP 轉換為 XLSX 以進行報告自動化。

常見問題解答 (FAQs)

Q1: 我可以將大型 MPP 文件轉換為 XLSX 嗎? 是的。Aspose.Tasks Cloud 支援大型 MPP 檔案的轉換;對於非常大型的專案,請考慮分塊處理或伺服器端處理。

Q2: 我需要安裝 Microsoft Project 嗎? 不。轉換完全在雲端處理 — 不需要 Microsoft Project。

Q3: 我可以轉換已在雲端儲存的 MPP 嗎? 是的。提供雲端檔案路徑或使用 UploadFile API 將本地 MPP 移動到雲端儲存。

Q4: Excel 輸出會保留甘特圖和任務列表嗎? Excel 輸出保留任務表和許多日程字段。根據轉換選項,圖形甘特圖可以作為表格或圖像導出。


相關文章