2008-10-06 36 views
22

Một số tài nguyên nào sẽ giúp tôi bắt đầu và chạy nhanh chóng với Excel interop trong C#?Tài nguyên cho việc học C# Excel interop

+1

Vì câu hỏi đã được hỏi, mọi thứ trở nên dễ dàng hơn. Đây là một liên kết gần đây: [Truy cập Office Interop đối tượng bằng cách sử dụng Visual C# 2010 tính năng] (http://msdn.microsoft.com/en-us/library/dd264733.aspx) – Tod

Trả lời

1

MSDN luôn luôn là đáng đọc.

+0

xin vui lòng giúp đỡ ở đây nếu u có thể http: // stackoverflow.com/questions/9962157/safely-disposing-of-an-object-using-c-sharp/ –

2

Nếu bạn đang tìm kiếm để tìm hiểu Mô hình đối tượng Excel, trợ giúp VBA là khá tốt.

Bạn có thể sử dụng "Hội đồng Interop chính" để làm việc với Excel

7

1) Điều đầu tiên trước tiên; Tải xuống Office Interop Assemblies mà từ đó bạn sẽ truy cập tất cả các đối tượng, thuộc tính và phương thức trong Excel interop và các tham chiếu thích hợp cho dự án của bạn. ĐƯỢC CHIA SẺ: Bất kỳ máy nào mà bạn dự định chạy mã của bạn cũng sẽ cần các cụm lắp ráp này. Bạn có thể bao gồm chúng trong gói cài đặt của bạn, hoặc chúng đi kèm với .NET framework 1.1, vì vậy nếu khách hàng của bạn đã cài đặt, họ có thể sẽ có các hội đồng interop.

2) Có rất nhiều kiến ​​thức về MSDN ... khá nhiều tất cả các đối tượng và phương pháp bạn sẽ sử dụng sẽ được ghi chép ở đó.

3) LƯU Ý: Một điều nhỏ lạ khi sử dụng Interop với C# là bạn phải cung cấp các tham chiếu "thiếu" cho các cuộc gọi interop theo cách thủ công ... tức là. Khi sử dụng các hàm trong VBA (nếu bạn sử dụng để làm điều đó) nếu phương thức gọi 3 đối số và phương thức cuối cùng là tùy chọn, bạn có thể "bỏ chúng ra" trong VBA (tức là đối số MyMethodOne) ... điều này không làm việc từ .NET đó là một điều khiến tôi bối rối trong một thời gian khi tôi bắt đầu sử dụng các hội đồng Interop; Bạn phải tạo thủ công một đối tượng thiếu như thế này (ví dụ là từ Word Interop, nhưng các hiệu trưởng tương tự áp dụng cho Excel hoặc bất kỳ gói Interop văn phòng nào khác (và bạn cũng phải đặt một số đối số và chuyển chúng theo ref như sau):

object missing = System.Reflection.Missing.Value; 
string somestring = "string"; 
object refstring = (object)s; 
wrd.Selection.Hyperlinks.Add(wrd.Selection.Range, **ref refstring, ref missing, ref missing, ref missing, ref missing**); 

tôi hy vọng rằng sẽ giúp.

+0

vui lòng trợ giúp tại đây nếu bạn có thể http://stackoverflow.com/questions/9962157/safely-disposing-of-an -object-using-c-sharp/ –

1

Bạn có thể học được nhiều điều bằng cách ghi macro (trong Excel) và phân tích những gì đã xảy ra.

Ngôn ngữ lập trình chính của tôi là C#, nhưng đối với giao tiếp của tôi với Excel (hoặc các đối tượng Office/COM khác), tôi luôn sử dụng VB.Net. Điều này giúp dễ dàng chuyển từ VBA (được ghi) sang .Net.

VB.Net giúp dễ dàng hơn trong việc kết nối muộn. Đầu tiên tôi sử dụng ràng buộc sớm (cho tôi Intellisense), sau đó tôi thay đổi kiểu của mình thành Object, vì vậy tôi không phụ thuộc vào phiên bản Office cụ thể nữa.

+0

hãy giúp http://stackoverflow.com/questions/9962157/safely-disposing-of-an-object-using-c-sharp/ –

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