Imports DTG.Spreadsheet
...
Dim WBook = New ExcelWorkbook()
WBook.Worksheets.Add("ArrayValues")
For i As Short = 0 To 10
For j As Short = 0 To 10
WBook.Worksheets(0).Cells[i,j].Value = arr(i,j)
j = j + 1
Next j
i = i + 1
Next i
WBook.WriteXLSX("ExcelSpreadsheet.xlsx")
3 回答
是的,它会让人感到困惑,特别是考虑到跳过级别的命名约定等 . 基本上,你需要:
Visual Studio的完整版(不是Express)和您要定位的.NET版本 .
VSTO运行时间之一(VSTO 2003,VSTO 2005,VSTO 2005 SE,VSTO 2008,VSTO 2010) . 对于你的要求,VSTO 2005 SE可能是你最好的选择 .
在分发您的应用时,您的目标是'll need more, like the PIAs and the .NET version you' . 对于VSTO 2010,您将不会自动与您的应用程序一起打包使用't need the PIAs (just what you' .
一些提示:
如果你在很大程度上使用.NET,那么从Office内部的VBE到VSTO应该是一个平稳的举动 .
任何给定程序(Excel,PowerPoint等)的对象模型的VSTO版本可能还有一些与对象模型的VBA版本不同/更好的做法 . 例如,VSTO 2008中Word的Bookmark控件与通过VBA访问的Word的Bookmark控件不同 .
分发您的应用程序可能会很痛苦 . 这就是为什么Visual Studio 2010的VSTO不要求您在程序包中包含完整的互操作(PIA)文件的原因 .
使用相同的解决方案定位不同版本的Office在VSTO 2010之前尚未得到正式支持 . 有些人已经讨论过这个问题,但是你不会得到MSFT的大力支持 .
有一些网站你应该看看:
Requirements VSTO solutions . 这是较旧的,但有助于阅读有关2005和2005 SE版本之间的差异 . This one也很不错,因为它包含了2008版本 .
Online resources for VSTO . 这是一个很好的'jump'网站,可以更多地了解VSTO .
Getting Started (Visual Studio Tools for Office) . 这个,它刚刚开始与VSTO一起加速,但稍后好一点 .
Can you build one add-in for multiple versions of Office? . 这是较旧的,但讨论了围绕多个版本的Office构建的一些问题 .
This site曾经更好地组织,但我总是发现视频是一种非常快速的学习方式 . 大多数这些视频都使用一种版本的VSTO .
最后,为了保存最后的最好,这是我刚开始时读到的那本书,它非常有帮助:VSTO for Mere Mortals(TM): A VBA Developer's Guide to Microsoft Office Development Using Visual Studio 2005 Tools for Office
SpreadsheetGear for .NET是适用于.NET的Excel兼容电子表格组件,适用于Visual Studio Express版本,需要.NET 2.0或更高版本,不需要安装Office或Excel,并允许免版税分发给无限数量的客户端和/或服务器计算机 .
你可以看到实时样本here并下载免费试用here .
免责声明:我拥有SpreadsheetGear LLC
您可以使用此Excel .NET component在Express Edition中创建Excel . 它不需要VSTO,ADO或MS Excel自动化 .
Excel Jetcell .NET组件允许读取写入Excel电子表格 . 在这里你可以找到很多Excel VB.NET and C# examples . 例如,请参阅VB.NET代码以从数组创建excel电子表格: