在Excel中复制选定的ListItem从列表视图到一个Excel工作表

你好,

我想选择的listiem从列表视图中用户窗体复制到Excel工作表。 我用下面的代码尝试,但是这个代码是复制ListView中的所有项目。 任何人可以帮助

私人小组CommandButton4_Click()
Sheet14.Activate
昏暗objExcel作为新Excel.Application
昏暗bkWorkBook作为工作簿
昏暗shWorkSheet作为工作表
昏暗我作为整数
昏暗Ĵ作为整数

设置bkWorkBook = objExcel.ActiveWorkbook
设置shWorkSheet = ActiveWorkbook.ActiveSheet
对于i = 1到ListView2.ColumnHeaders.count
shWorkSheet.Cells(1,CHR(64 + I))= ListView2.ColumnHeaders㈠
下一个
对于i = 1到ListView2.ListItems.count
shWorkSheet.Cells(I + 2,“A”)= ListView2.ListItems(I)。文本
ListView2.SelectedItem.EnsureVisible
对于J = 2要ListView2.ColumnHeaders.count
shWorkSheet.Cells(I + 2,CHR(64 + J))= ListView2.ListItems(I).SubItems(J - 1)
下一个
下一个

objExcel.Visible = TRUE
结束小组

--------------解决方案-------------

你好,

非常感谢,你是天才要比,该代码现在工作完美:

私人小组CommandButton4_Click()

昏暗我只要
昏暗ř只要
尺寸C只要

Sheet14.Activate

“清除任何现有数据
范围(“A1”)。CurrentRegion.ClearContents

名单列标题的第一行中,起始于A1
随着Me.ListView2
对于i = 1到.ColumnHeaders.Count
细胞(1,I)。价值= .ColumnHeaders(I)
接下来,我
结束与

“列表中选定的项目和子项目开始第2行
R = 2
随着Me.ListView2
对于i = 1到.ListItems.Count
如果.ListItems(ⅰ)接着.Checked

细胞(R,“A”)。值= .ListItems(我)。文本
对于C = 1要.ListItems(我).ListSubItems.Count
细胞(R,C + 1).value的= .ListItems(I).ListSubItems(C)。文本
下一个C
R = R + 1个
万一
接下来,我
结束与

结束小组

尝试...

私人小组CommandButton4_Click()
昏暗我只要
昏暗Ĵ只要
Sheet14.Activate
随着Me.ListView2
对于i = 1到.ListItems.Count
如果.ListItems(ⅰ)接着.Selected
细胞(1,“A”)。值= .ColumnHeaders(1)。文本
细胞(2,“A”)。值= .ListItems(我)。文本
对于j = 1向.ListItems(ⅰ).ListSubItems.Count
细胞(1,“A”)。偏移(,J).value的= .ColumnHeaders(J + 1)
细胞(2,“A”)。偏移(,J).value的= .ListItems(I).ListSubItems(J)。文本
下面j

对于出口

万一
接下来,我
结束与
结束小组

希望这可以帮助!

你好,

非常感谢,你在这里建议被复制和列表视图从粘贴只有一个选项的代码,我想有多重选择要复制并在Excel工作表粘贴,可这是可能的

尝试...

私人小组CommandButton4_Click()

昏暗我只要
昏暗ř只要
尺寸C只要

Sheet14.Activate

“清除任何现有数据
范围(“A1”)。CurrentRegion.ClearContents

名单列标题的第一行中,起始于A1
随着Me.ListView2
对于i = 1到.ColumnHeaders.Count
细胞(1,I)。价值= .ColumnHeaders(I)
接下来,我
结束与

“列表中选定的项目和子项目开始第2行
R = 2
随着Me.ListView2
对于i = 1到.ListItems.Count
如果.ListItems(ⅰ)接着.Selected
细胞(R,“A”)。值= .ListItems(我)。文本
对于C = 1要.ListItems(我).ListSubItems.Count
细胞(R,C + 1).value的= .ListItems(I).ListSubItems(C)。文本
下一个C
R = R + 1个
万一
接下来,我
结束与

结束小组

希望这可以帮助!

你好,

它毕竟是复制只有一个列表项,列表视图属性已经为True多选对于与亦是如此forcheckbox财产。 它copys只有反白标明一行。 我们可以做一些复制的复选框选中的项目。

尝试更换...

如果.ListItems(ⅰ)接着.Selected

如果.ListItems(ⅰ)接着.Checked

这是否帮助?

你好,

非常感谢,你是天才要比,该代码现在工作完美:

私人小组CommandButton4_Click()

昏暗我只要
昏暗ř只要
尺寸C只要

Sheet14.Activate

“清除任何现有数据
范围(“A1”)。CurrentRegion.ClearContents

名单列标题的第一行中,起始于A1
随着Me.ListView2
对于i = 1到.ColumnHeaders.Count
细胞(1,I)。价值= .ColumnHeaders(I)
接下来,我
结束与

“列表中选定的项目和子项目开始第2行
R = 2
随着Me.ListView2
对于i = 1到.ListItems.Count
如果.ListItems(ⅰ)接着.Checked

细胞(R,“A”)。值= .ListItems(我)。文本
对于C = 1要.ListItems(我).ListSubItems.Count
细胞(R,C + 1).value的= .ListItems(I).ListSubItems(C)。文本
下一个C
R = R + 1个
万一
接下来,我
结束与

结束小组

非常欢迎!

干杯!

分类:办公室 时间:2013-02-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.380 (s). 9 q(s)