[C#] 讀取EXCEL

更新於 發佈於 閱讀時間約 4 分鐘

在專案中,使用NuGet套件管理員來安裝Microsoft.Office.Interop.Excel套件。這個套件將幫助我們與Excel進行互動。


匯入Microsoft.Office.Interop.Excel

using Excel = Microsoft.Office.Interop.Excel;

讀取Excel檔案

using System;

namespace ExcelReaderExample
{
class Program
{
static void Main(string[] args)
{
// 設定Excel檔案的路徑
string excelFilePath = @"C:\path\to\your\file.xlsx";

// 建立一個新的Excel Application物件
Excel.Application excelApp = new Excel.Application();

// 打開Excel檔案
Excel.Workbook workbook = excelApp.Workbooks.Open(excelFilePath);

// 假設Excel檔案只有一個工作表,直接使用索引1來取得該工作表
Excel.Worksheet worksheet = workbook.Worksheets[1];

// 讀取資料
int rowCount = worksheet.UsedRange.Rows.Count;
int colCount = worksheet.UsedRange.Columns.Count;

for (int row = 1; row <= rowCount; row++)
{
for (int col = 1; col <= colCount; col++)
{
// 使用Cells物件來取得單元格的值
Excel.Range cell = worksheet.Cells[row, col];
string cellValue = cell.Value != null ? cell.Value.ToString() : "";
Console.Write(cellValue + "\t");
}
Console.WriteLine();
}

// 關閉Excel檔案
workbook.Close();
excelApp.Quit();

// 釋放資源
System.Runtime.InteropServices.Marshal.ReleaseComObject(worksheet);
System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook);
System.Runtime.InteropServices.Marshal.ReleaseComObject(excelApp);

Console.ReadLine();
}
}
}

這個範例中,我們使用Microsoft.Office.Interop.Excel套件來打開Excel檔案,讀取資料並輸出到控制台。記得要替換excelFilePath為你要讀取的實際Excel檔案的路徑。

請留意我們在最後的程式碼中釋放了COM物件的資源,這是很重要的一步。Excel物件是COM物件,如果未正確釋放資源,可能會導致資源洩漏或程式當機。因此,當不再使用這些COM物件時,務必確保呼叫Marshal.ReleaseComObject

avatar-img
68會員
126內容數
這裡將以輕鬆風格,深入探討程式設計的基礎和高級概念。從程式語言到演算法,我們將以易懂的方式解釋每個主題,讓你輕鬆掌握。無論你是初學者或有經驗者,都能在這裡找到適合你的內容。無論你的目標是成為專業開發者還是擴展知識,我們都會陪伴你一同成長!
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
程式輕鬆玩 的其他內容
在這篇教學中,我們將學習如何在C#程式碼中使用字串插值來加入變數。字串插值是一種方便且易讀的方式,讓我們可以將變數值插入到字串中,而不必使用傳統的串接方法。現在,讓我們開始吧! 在這個範例中,我們將創建一個簡單的應用程式,使用字串插值在螢幕上顯示一條個人訊息。這個訊息包含姓名、年齡和城市。 us
在現代科技的快速發展下,AI繪圖工具已成為許多創作者的得力助手。我有幸使用這些工具,並深感它們對創作過程的影響。
在現代科技快速發展的時代,學習程式設計已經成為一項重要的技能。無論年齡如何,程式設計都可以為人們帶來許多價值和益處。從幼童到老年人,學習程式設計不僅能夠培養邏輯思維,還能提升解決問題的能力和創造力。讓我們一起探討在各個年齡層中學習程式設計的重要性,並看看它如何在不同階段深化思維和進行系統化整理。
那是我第一次參加露營活動,選擇了新竹山作為目的地。我興奮地到場搭建帳篷,雖然花了不少時間,但最終還是成功地完成了。下午我們盡情地享受了整個下午,玩得開心滿足。 晚餐時,我們圍在營火旁烤肉,大家談笑風生,歡聲笑語充斥著整個露營地。我感受到與自然和諧相處的美好時光,這樣的體驗令我心情愉悅。
當我決定轉職,開始尋找理想的工作時,我充滿了期待和興奮。我相信這將是一個我人生中重要的轉折點,一個讓我實現自我價值和追求更大成就的機會。然而,現實卻並非如此。我在求職的道路上遭遇了一連串的挫折和困難。
在這篇教學中,我們將使用 Python 的 requests 和 BeautifulSoup 套件,來爬取台積電股價的最新交易日收盤價。
在這篇教學中,我們將學習如何在C#程式碼中使用字串插值來加入變數。字串插值是一種方便且易讀的方式,讓我們可以將變數值插入到字串中,而不必使用傳統的串接方法。現在,讓我們開始吧! 在這個範例中,我們將創建一個簡單的應用程式,使用字串插值在螢幕上顯示一條個人訊息。這個訊息包含姓名、年齡和城市。 us
在現代科技的快速發展下,AI繪圖工具已成為許多創作者的得力助手。我有幸使用這些工具,並深感它們對創作過程的影響。
在現代科技快速發展的時代,學習程式設計已經成為一項重要的技能。無論年齡如何,程式設計都可以為人們帶來許多價值和益處。從幼童到老年人,學習程式設計不僅能夠培養邏輯思維,還能提升解決問題的能力和創造力。讓我們一起探討在各個年齡層中學習程式設計的重要性,並看看它如何在不同階段深化思維和進行系統化整理。
那是我第一次參加露營活動,選擇了新竹山作為目的地。我興奮地到場搭建帳篷,雖然花了不少時間,但最終還是成功地完成了。下午我們盡情地享受了整個下午,玩得開心滿足。 晚餐時,我們圍在營火旁烤肉,大家談笑風生,歡聲笑語充斥著整個露營地。我感受到與自然和諧相處的美好時光,這樣的體驗令我心情愉悅。
當我決定轉職,開始尋找理想的工作時,我充滿了期待和興奮。我相信這將是一個我人生中重要的轉折點,一個讓我實現自我價值和追求更大成就的機會。然而,現實卻並非如此。我在求職的道路上遭遇了一連串的挫折和困難。
在這篇教學中,我們將使用 Python 的 requests 和 BeautifulSoup 套件,來爬取台積電股價的最新交易日收盤價。
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
微軟的EXCEL又出了一個新函數了【TRANSLATE】,TRANSLATE這個單字翻譯成中文就是翻譯的意思,他的功能就是"翻譯"。 有了這個函數就可以直接在原有資料進行翻譯,不用再把資料丟到Google翻譯或是GPT了。 🔎函數說明 TRANSLATE(要翻譯的內容,原始語言,翻
Thumbnail
本法省去開啟EXCEL檔,轉存為CSV檔之手動作業,縮短作業時間,提高工作效率,尤其是對象為複數個檔案場合
Thumbnail
這篇文章介紹如何使用VBA程式碼將【包含備註】的Excel檔案轉換為PDF檔。在研究這個問題時,作者花了3個小時多的時間,但後來發現了一個更簡單的方法,這讓作者感到震驚和懷疑人生。最後,作者強調使用他人的智慧來提高自己的能力。文章提供了相關參考文獻和圖片。
Thumbnail
本文介紹了將獨立的Excel檔案轉換為PDF檔的方法,並提供了相關連結和資源,包括Excel教學、VBA自動轉存檔案等。文章中還包含了南宋詞人辛棄疾詞和張忠謀的引言,讓讀者在解決問題的同時得到一些靈感和鼓勵。
兩日開發出來的EXCEL易經數字在一套OFFICE 2013面前毫無用武之力,只好配合全數OFFICE能用的狀態下,耗費兩小時重新重生,我早就已經給兩位使用者使用(看到文章的你已經是三天前我所寫的文章),在遊戲世界,每套軟體都渴望你趕快升級,這樣商人才有利益價值,然而在推廣命理的我,卻是...
Thumbnail
Microsoft 365 方案可以說是每個企業必備的工具,無論企業規模多大,多數人日常工作都離不開他。而其中最常被使用的無非是 PowerPoint、Word 和 Excel 等文書處理工具。 然而,Microsoft 365提供的價值絕對不只有這樣,它還包含了一系列可以提升工作效率和改善組織流
Thumbnail
因為工作的關係,需要在EXCEL產生和台股有關的資訊。 要抓取台股的方式有很多,譬如說用EXCEL 現在的功能從網頁匯入,但是畢竟愛寫程式的人就是因為懶,不想每次都用滑鼠點點點,所以就想要如何用VBA克服。 還好研究了一下,備齊以下幾個工具,就可以了。 (1)要有一個可以解析JSON格式的Li
這段程式碼假設您的XYZ資料存儲在名為"Sheet1"的工作表中的A1:Cn範圍內,其中n是資料行的數量。它將資料提取出來,然後在新建的工作表中按照網格的形式重新排列。
Thumbnail
向下填滿是EXCEL一個超好用的功能,依據不同的資料型態能有不同的填滿效果。 例如總金額=單價*數量 輸入完公式之後就會使用自動填滿的功能去將資料迅速的計算完成。 每隔一段時間就會有網友詢問,為什麼我的EXCEL沒辦法向下填滿,我昨天還可以用,我隔壁同事也可以用,從開機也是一樣,我的E
Thumbnail
這篇文章介紹瞭如何使用VBA來控制Powerpoint,以及透過VBA控制Powerpoint的好處,包括動態資料的圖表簡報、改變表格底色、串接API等。文章強調了了解物件和屬性的關係後,就可以開始探索VBA控制Powerpoint的各種可能性。
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
微軟的EXCEL又出了一個新函數了【TRANSLATE】,TRANSLATE這個單字翻譯成中文就是翻譯的意思,他的功能就是"翻譯"。 有了這個函數就可以直接在原有資料進行翻譯,不用再把資料丟到Google翻譯或是GPT了。 🔎函數說明 TRANSLATE(要翻譯的內容,原始語言,翻
Thumbnail
本法省去開啟EXCEL檔,轉存為CSV檔之手動作業,縮短作業時間,提高工作效率,尤其是對象為複數個檔案場合
Thumbnail
這篇文章介紹如何使用VBA程式碼將【包含備註】的Excel檔案轉換為PDF檔。在研究這個問題時,作者花了3個小時多的時間,但後來發現了一個更簡單的方法,這讓作者感到震驚和懷疑人生。最後,作者強調使用他人的智慧來提高自己的能力。文章提供了相關參考文獻和圖片。
Thumbnail
本文介紹了將獨立的Excel檔案轉換為PDF檔的方法,並提供了相關連結和資源,包括Excel教學、VBA自動轉存檔案等。文章中還包含了南宋詞人辛棄疾詞和張忠謀的引言,讓讀者在解決問題的同時得到一些靈感和鼓勵。
兩日開發出來的EXCEL易經數字在一套OFFICE 2013面前毫無用武之力,只好配合全數OFFICE能用的狀態下,耗費兩小時重新重生,我早就已經給兩位使用者使用(看到文章的你已經是三天前我所寫的文章),在遊戲世界,每套軟體都渴望你趕快升級,這樣商人才有利益價值,然而在推廣命理的我,卻是...
Thumbnail
Microsoft 365 方案可以說是每個企業必備的工具,無論企業規模多大,多數人日常工作都離不開他。而其中最常被使用的無非是 PowerPoint、Word 和 Excel 等文書處理工具。 然而,Microsoft 365提供的價值絕對不只有這樣,它還包含了一系列可以提升工作效率和改善組織流
Thumbnail
因為工作的關係,需要在EXCEL產生和台股有關的資訊。 要抓取台股的方式有很多,譬如說用EXCEL 現在的功能從網頁匯入,但是畢竟愛寫程式的人就是因為懶,不想每次都用滑鼠點點點,所以就想要如何用VBA克服。 還好研究了一下,備齊以下幾個工具,就可以了。 (1)要有一個可以解析JSON格式的Li
這段程式碼假設您的XYZ資料存儲在名為"Sheet1"的工作表中的A1:Cn範圍內,其中n是資料行的數量。它將資料提取出來,然後在新建的工作表中按照網格的形式重新排列。
Thumbnail
向下填滿是EXCEL一個超好用的功能,依據不同的資料型態能有不同的填滿效果。 例如總金額=單價*數量 輸入完公式之後就會使用自動填滿的功能去將資料迅速的計算完成。 每隔一段時間就會有網友詢問,為什麼我的EXCEL沒辦法向下填滿,我昨天還可以用,我隔壁同事也可以用,從開機也是一樣,我的E
Thumbnail
這篇文章介紹瞭如何使用VBA來控制Powerpoint,以及透過VBA控制Powerpoint的好處,包括動態資料的圖表簡報、改變表格底色、串接API等。文章強調了了解物件和屬性的關係後,就可以開始探索VBA控制Powerpoint的各種可能性。