【发布时间】:2013-05-28 12:44:17
【问题描述】:
我有一个用 VBA/Excel 开发的旧应用程序,它使用 ListView 控件。不幸的是,它看起来像these controls can't be used with 64-bit versions of Excel:
Office 2010 中的本机 64 位进程无法加载 32 位二进制文件。这包括 MSComCtl [例如 ListViews] 的常用控件。 当代码迁移到 64 位 Office 2010 时,必须为使用这些控件的现有 Microsoft Office VBA 解决方案找到替代方案。
我需要将该旧应用程序迁移到 Excel 2010/13 x64。除了那些ListView 控件之外,该过程几乎没有痛苦。
替换ListView 控件的主要选项是什么?哪个最有效(从时间和实施难度的角度来看)?
注意事项:
- 此问题已在MS forums 上提出,但尚未给出实际答案。
- 添加
.net标签,因为我怀疑一些解决方案可能来自那里。
为了更清楚,这里是 Excel 用户表单的快照。底部是列表视图(我有隐藏的机密信息),它有可排序的列,允许用户选择多个非连续的行。
【问题讨论】:
-
您正在使用哪些 ListView 功能?列标题?团体?一个所有者绘制的 ListBox 可以让你走多远?
-
@shambulator 主要是:标题、列排序、多行选择、列自动调整大小。
-
ListView 是在用户窗体中还是直接在工作表中?如果是后者,如何使用 Excel 表格(即
ListObjects)并添加一些带有事件的个人行为(例如多选行、对列进行排序)? -
@PeterAlbert 它们在表单中,使用户可以在电子表格上进行操作时将它们放在面前。
-
那是不切实际的... + 1 BTW 一个好问题 :)
标签: .net excel vba listview 64-bit