2011-11-09 30 views
16

Bị ép buộc từ NPOI đến interop microsoft, tôi phải thực hiện một nhiệm vụ tìm một bảng tính nhất định trong sổ làm việc, và sau đó lặp qua từng hàng của nó.Cách lấy bảng tính theo tên trong .NET?

Trong NPOI, chỉ đơn giản là workbook.GetSheet(sheetName);. Điều gì sẽ là tương đương với điều này trong interop microsoft?

Trả lời

21

Sử dụng workbook.Sheets[sheetName];

Toàn bộ ví dụ làm việc:

using Microsoft.Office.Interop.Excel; 

class Program 
{ 
    static void Main(string[] args) 
    { 
     var excelApplication = new Application(); 
     excelApplication.Visible = true; 
     excelApplication.SheetsInNewWorkbook = 3; 
     var workbook = excelApplication.Workbooks.Add(); 
     var worksheet = workbook.Sheets["Sheet2"];   //<--- desired method 
     worksheet.Activate(); 
    } 
} 
+3

Bạn có chắc chắn? Tôi khá chắc chắn bạn chỉ có thể làm 'workbook.Sheets [" Sheet2 "]'. –

+0

@JeffYates, Dope! +1 Quyền của bạn ... không cần phải làm một phương pháp mở rộng. Đã cập nhật bài đăng của tôi để sửa cho điều này. – Matt

+0

Vui vì tôi có thể giúp đỡ. :) –

Các vấn đề liên quan