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ả

Hệ thống chống trộm bằng tia laze với Arduino

Hôm nay, mình xin hướng dẫn các bạn làm một hệ thống chống trộm cực đơn giản...Các bạn đã xem những bộ phim hành động của Mĩ...Để bảo mật một vật quý, họ thường hay cho vào một cái tủ...rồi chiếu hệ thống chống chộm laze xung quanh. Vậy hôm nay, mình sẽ hướng dẫn chế tạo nó!!!

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

Khởi đầu những dự án IoT bằng Raspberry Pi

Raspberry Pi không chỉ là một nền tảng phần cứng thú vị để ứng dụng cho các dự án IoT mà còn là công cụ giúp các nhà phát triển học hỏi và hoàn thiện kĩ năng Internet kết nối vạn vật. Internet of Things được cho là chủ đề nóng nhất trong lĩnh vực CNTT hiện nay. Mọi tổ chức muốn tham gia vào xu hướng IoT thì luôn đòi hỏi các chuyên gia CNTT phải được trang bị các kỹ năng, kinh nghiệm cho các dự án của mình. Có rất nhiều tùy chọn cho việc học về IoT, nhưng không có gì tốt hơn ngoài những kinh nghiệm thực tế.

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