从vb.net中的SQL数据表生成Excel文档

在我的项目中,我有一个汇总数据表,我想在Excel文档中导出,为此我部署了以下代码:

Public Shared Function Main() As Integer Dim exc As New Application exc.Visible = True Dim workbooks As Excel.Workbooks = exc.Workbooks Dim workbook As Excel._Workbook = workbooks.Add(XlWBATemplate.xlWBATWorksheet) Dim sheets As Sheets = workbook.Worksheets Dim worksheet As _Worksheet = CType(sheets.Item(1), _Worksheet) exc.DataEntryMode = True Dim range1 As Range = worksheet.Range("C1", Missing.Value) Const nCells As Integer = 5 Dim args1(1) As [Object] args1(0) = nCells range1.GetType().InvokeMember("Value", BindingFlags.SetProperty, Nothing, range1, args1) Return 100 End Function 

当我试图执行该行时:

 range1.GetType().InvokeMember("Value", BindingFlags.SetProperty, Nothing, range1, args1) 

我得到错误: Exception has been thrown by the target of an invocation
在这一点上,我无法弄清楚是什么问题。 有人帮我吗?

不要担心尝试使用invoke成员。

要将一系列值填充到Excel文档中,您可以使用类似这样的内容

 dim row as integer = 1 dim column as integer = 1 Worksheet.Cells(row,column) = "My value here" 'or this Worksheet.Cells("A1").Value = "my Value Here" ' or this Worksheet.Range("A1") = "My value here" 

尝试从Excel内部的angular度来看待它,然后遵循相同的模式。

编辑
用于文字alignment选项,如自动换行等

 dim rng as Range = Worksheet.Range("A1") With rng .HorizontalAlignment = xlGeneral .VerticalAlignment = xlTop .WrapText = True .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = False end With