在我的代码中,我选择excel文件将它们添加到列表框中,然后运行一些代码来替换列表中所有excel文件上的某个单元格。每次它改变了Excel单元格文件,它会使用VB.NET Listbox selectedindex
Me.ListBox2.SelectedIndex = Me.ListBox2.SelectedIndex + 1
去下一个在列表框中但是,当它到达列表的末尾它给了我一个错误。我怎么让我的列表框知道它到达了最后。
在我的代码中,我选择excel文件将它们添加到列表框中,然后运行一些代码来替换列表中所有excel文件上的某个单元格。每次它改变了Excel单元格文件,它会使用VB.NET Listbox selectedindex
Me.ListBox2.SelectedIndex = Me.ListBox2.SelectedIndex + 1
去下一个在列表框中但是,当它到达列表的末尾它给了我一个错误。我怎么让我的列表框知道它到达了最后。
把支票是这样的:
if Me.ListBox2.SelectedIndex + 1 < Me.ListBox2.items.count then
Me.ListBox2.SelectedIndex + = 1
End if
我想我会做一个针对/通过项目的每个/下一循环是这样的:
For Each ListItem As Object In ListBox2.Items
'Set Active item as selected
ListBox2.SelectedItem = ListItem
'manipulate file
UpdateExcelFile(ListItem.ToString)
Next
看起来确实像一个更清洁的方法,将研究这一点。 – PandaNL 2012-02-14 10:10:48
似乎没有工作,它不选择下一个项目,但停留在第一个项目。 – PandaNL 2012-02-13 10:20:24
有一个轻微的错误,请尝试更新的答案。 – Harsh 2012-02-13 10:21:50
使用+ = 1将其缩短一点。 ;) – Stefan 2012-02-13 10:31:25