如何将ListView中的数据导出到Excel
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将ListView中的数据导出到Excel相关的知识,希望对你有一定的参考价值。
首先要引入一个命名空间:Microsoft.Office.Interop.Excel;代码贴出。希望可以帮到楼主Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();excel.Visible = false;
excel.Application.Workbooks.Add(true);
for (int i = 0; i < this.listView1.Columns.Count; i++)//为excel添加标题
excel.Cells[1, i + 1] = listView1.Columns[i].Text;
for (int i = 0; i < listView1.Items.Count; i++)//添加每一项
for (int j = 0; j < listView1.Columns.Count; j++)
excel.Cells[i + 2, j + 1] = listView1.Items[i].SubItems[j].Text;
excel.DisplayAlerts = false;//和下面这个通常是一起用的
excel.AlertBeforeOverwriting = false;//设置禁止弹出保存和覆盖的询问提示框
excel.Application.Workbooks[1].Save();
excel.Application.Save("C:\\\\123.xsl");//保存路径。可以自定义,也可以通过savedialog对话框获取保存路劲 参考技术A Private Sub UserForm_Initialize()
'Private Sub Form_Load()
ListView1.ListItems.Clear '清空列表
ListView1.ColumnHeaders.Clear '清空列表头
ListView1.View = lvwReport '设置列表显示方式
ListView1.Gridlines = True '显示网络线
ListView1.LabelEdit = lvwManual '禁止标签编辑
ListView1.FullRowSelect = True '选择整行
End Sub
'=====================================
sub 从工作表加入数据()
'循环添加列头
For i = 1 To 4 'ColumnHeaders从1开始
ListView1.ColumnHeaders.Add i, , Sheets("cj").Cells(1, i) '序号i可不用,key不用,列头显示值,列宽度
Next
a = Sheets("cj").[a65536].End(xlUp).Row
For x = 2 To a
'For y = 1 To 3
ListView1.ListItems.Add , , Sheets("cj").Cells(x, 1).Value
'ListView1.ListItems(x - 1).Text = Sheets("cj").Cells(x, 1).Value
'ListItems从1开始,SubItems从1开始
'同行不同列(除了第1列text),分开写成N行代码
ListView1.ListItems(x - 1).SubItems(1) = Sheets("cj").Cells(x, 2).Value 'excel第2列
ListView1.ListItems(x - 1).SubItems(2) = Sheets("cj").Cells(x, 3).Value
ListView1.ListItems(x - 1).SubItems(3) = Sheets("cj").Cells(x, 4).Value
'Next y
Next x
end sub
listview导出Excel,该如何做?
如何设置行列?
参考技术A list控件显示的数据好像不能直接导出到excel,你可以做一个查询,然后直接导出到Excel(好像是用‘另存为’),如果你要保存在已有的Excel文档,用复制粘贴好了,也挺方便的
以上是关于如何将ListView中的数据导出到Excel的主要内容,如果未能解决你的问题,请参考以下文章