Menu

Tự động hóa cập nhật dữ liệu Excel từ API Web bằng C# và HttpClient

Vàng Hoài Tú 03/04/2026 16:05 581 lượt xem 3 trả lời

Chào các anh em trong diễn đàn,

Dạo này mình đang làm một dự án cần cập nhật dữ liệu vào file Excel một cách tự động từ một API web. Sau khi tìm hiểu và thử nghiệm, mình đã dùng C# kết hợp với thư viện HttpClient để gọi API và lấy dữ liệu. Mình muốn chia sẻ lại kinh nghiệm này để mọi người tham khảo, đặc biệt là những ai đang làm việc với Excel và C#.

Ý tưởng chính:

  • Sử dụng HttpClient để gửi yêu cầu GET/POST đến API và nhận về dữ liệu (thường là JSON).
  • Phân tích chuỗi JSON nhận được thành các đối tượng C# (có thể dùng thư viện Newtonsoft.Json).
  • Tạo một đối tượng Excel Application hoặc sử dụng thư viện như EPPlus để ghi dữ liệu vào file Excel.

Ví dụ đơn giản với HttpClient và EPPlus:

Giả sử API trả về một danh sách các sản phẩm:

public class Product
{
    public int Id { get; set; }
    public string Name { get; set; }
    public decimal Price { get; set; }
}

// ... trong hàm gọi API
using (var client = new HttpClient())
{
    client.BaseAddress = new Uri("https://api.example.com/");
    HttpResponseMessage response = await client.GetAsync("products");
    response.EnsureSuccessStatusCode(); // Ném ngoại lệ nếu không thành công
    string responseBody = await response.Content.ReadAsStringAsync();
    List products = JsonConvert.DeserializeObject(responseBody);

    // Tiếp theo là ghi dữ liệu vào Excel bằng EPPlus
    // ... code EPPlus ở đây ...
}

Việc sử dụng EPPlus sẽ giúp bạn tạo file Excel mới hoặc ghi đè/thêm dữ liệu vào file có sẵn một cách dễ dàng mà không cần cài đặt Microsoft Excel trên máy chủ. Các bạn có thể tham khảo thêm tài liệu của EPPlus để biết cách tạo bảng tính, định dạng ô, tạo biểu đồ...

Hy vọng chia sẻ này hữu ích cho mọi người. Nếu có ai có kinh nghiệm khác hoặc gặp khó khăn, chúng ta cùng thảo luận nhé!

4

Hay quá bạn ơi! Mình cũng đang rất quan tâm đến việc tự động hóa dữ liệu Excel bằng code. Bạn có thể chia sẻ chi tiết hơn về cách bạn xử lý dữ liệu JSON nhận về không? Mình hay gặp khó khăn ở khâu này, đặc biệt là với các cấu trúc JSON phức tạp.

1
Hay quá bạn ơi! Mình cũng đang rất quan tâm đến việc tự động hóa dữ liệu Excel bằng code. Bạn có thể chia sẻ chi tiết hơn về cách bạn xử lý dữ liệu JSON nhận về không? Mình hay gặp khó khăn ở khâu này, đặc biệt là với các cấu trúc JSON phức tạp.
5

Tuyệt vời! Chia sẻ của bạn rất hữu ích, đặc biệt là với những ai muốn kết nối Excel với thế giới bên ngoài qua API.

Về phần xử lý JSON, mình cũng thấy đây là bước quan trọng. Bạn có thể bật mí thêm cách bạn "bóc tách" dữ liệu từ chuỗi JSON đó để đưa vào Excel không? Mình đang dùng Newtonsoft.Json, không biết bạn có dùng thư viện tương tự hay có cách nào khác hiệu quả hơn?

3

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký