VB 2010 Excel自动化

我试图从datagridview元素中的选定行自动填充主Excel文件。 我已经将数据库连接到数据网格,并且我试图根据数据网格的选定行填充Excel电子表格中的某些字段。

Dim objExcel As New Excel.Application objExcel.Workbooks.Add("path of master workbook") ' objExcel.Visible = True 'Select and modify cells 'Site(Name) objExcel.Range("B2").Select() objExcel.ActiveCell.FormulaR1C1() = 'Where I want to specify the value 

从我所做的研究中,我将需要使用我的datagrid的selectionchanged事件来识别选定的行,然后根据列索引填充电子表格,然后使用循环为其余字段填充。 我还想添加创build多个工作表的function,方法是循环访问datagrid视图中的选定行。

我已经看过许多不同的代码示例,用于将整个数据网格导出到Excel中,但是我不能一辈子都知道如何获取所选行的值,然后再根据列。

有人能指引我正确的方向,还是让我知道我完全脱离基地?

设置一个单元格的值,你可以使用

 objExcel.Range("B2").Value = "whatever" 

没有必要select一个单元格来设置它的值。 既然你要循环遍历行/列和插入值,你可能会发现使用不同的方法来解决特定的单元格更方便:

 objExcel.Cells(2,2).Value = "whatever" 'row,column 

我不确定你需要捕获你的datagridview上的事件(除非你正在自动写行被选中):我猜你有一个button或什么东西来触发导出,所以你只需要dso看看dgv的SelectedRows

http://msdn.microsoft.com/en-us/library/x8x9zk5a.aspx#Y0