Lấy dữ liệu từ Excel thông qua C#

I. Giới thiệu

Ở bài hôm trước, mình đã hướng dẫn về cách ghi dữ liệu vào Excel bằng C#, phục vụ cho những dự án ghi Log. Vậy làm thế nào để đọc dữ liệu từ những file Excel đó?? Bài hum nay, mình sẽ giải quyết vấn đề này. Ở bài này, mình sẽ làm 1 project đọc dữ liệu từ file Excel sẵn có!!!

II. Khởi tạo

Để làm được project này, các bạn tạo 1 project Console Application như bài hôm trước nhé:

Sau đó, bạn có 1 Project Console Application, để làm 1 chương trình ghi dữ liệu vào Excel...(giống bài htrc..hehe) Trước tiên, bạn Add Library thư viện dùng cho Microsoft Office Excel bằng cách sau :

- Chọn Project >> Add Reference

- Hộp thoại Add Reference hiện ra, bạn chọn thẻ COM...Chọn Library muốn Add, ở đây là Microsoft Office Excel Library...(version bn đó, tùy vào bạn đang sử dụng Office phiên bản nào)

III. Full Code:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Excel;//dùng thư viện Excel sau khi Add
using System.Threading;//Thư viện Threading

namespace Read_Excel
{
    class Program
    {
        static void Main(string[] args)
        {
//Đánh dấu batdau:
        batdau:
            Console.Clear();//Xóa màn hình
            Console.WriteLine("Nhap duong dan file Excel can doc");
            String link = Console.ReadLine();//Đọc link file Excel đc nhập
            if (!System.IO.File.Exists(link))
            {
//Nếu đường link k chính xác thì....
                Console.WriteLine("Duong dan khong chinh xac, vui long thu lai...");
                Thread.Sleep(1000);// delay(1000)
                goto batdau;// Quay lại từ đầu
            }

            else
            {

                // chạy file Excel theo đường dẫn
                Excel.Application xlApp = new Excel.Application();
                Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(link);
                // Lấy Sheet 1
                Excel.Worksheet xlWorksheet = (Excel.Worksheet)xlWorkbook.Sheets.get_Item(1);
                // Lấy phạm vi dữ liệu
                Excel.Range xlRange = xlWorksheet.UsedRange;
                // Tạo mảng lưu trữ dữ liệu
                object[,] valueArray = (object[,])xlRange.get_Value(Excel.XlRangeValueDataType.xlRangeValueDefault);

                // Hiển thị nọi dung
                for (int row = 1; row <= xlWorksheet.UsedRange.Rows.Count; ++row)//đọc row hiện có trong Excel
                {
                    for (int colum = 1; colum <= xlWorksheet.UsedRange.Columns.Count; ++colum)//đọc colum trong Excel
                    {
                        String giatri = valueArray[row, colum].ToString();//Giá trị = valueArray[dòng, cột]; ToString() là để chuyển giá trị thành dạng String
                        Console.WriteLine(giatri);
                    }
                    
                        
                    
                }
                Console.ReadLine();  
                    // Đóng Workbook.
                    xlWorkbook.Close(false);
                    // Đóng application.
                    xlApp.Quit();
//Khử hết đối tượng
                    System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWorkbook);
                    System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);
                }
            }
        }
    }

IV. Thành quả:

V. Lời kết

Trên đây, là cách đọc file Excel...Chúc các bạn thành công!!!! Và ủng hộ mình bằng cách RATE NODE nhé!!

lên
22 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Logging data from Arduino to Excel - Lưu dữ liệu từ Arduino vào tệp Excel trên máy tính thông qua C#

Xin chào các bạn, hôm nay mình sẽ giải đáp thắc mắc : Làm thế nào để ghi dữ liệu vào Excel thông qua C#? Mình cũng thấy trên cộng đồng có bài viết rất hay của a NTP_PRO nói về vấn đề này rồi, nhưng a NTP_PRO sử dụng Processing. Nhưng hôm nay, mình sẽ hướng dẫn các bạn bằng C# - Một hướng tiếp cận rất hay!!!

lên
55 thành viên đã đánh giá bài viết này hữu ích.

Chế tạo Serial Monitor từ C# (C Sharp) - Một sản phẩm được truyền cảm hứng

Sau khi đọc bài viết C sharp (C#) - Một cách điều khiển ARDUINO bằng máy tính !!! của Đinh Hồng Thái mình thấy rất hay và muốn phát triển nó...Trong đầu mình chợt lóe lên những ý tưởng với C#. Mình tự đặt câu hỏi: Làm thế nào để tự tạo ra 1 Serial Monitor của chính mình!!! Qua một thời gian tìm hiểu, mình đã thành công!!!

lên
26 thành viên đã đánh giá bài viết này hữu ích.