我有一个访问表单,其中包含一个具有7列(行源类型-值列表)的列表框(lstusers)
我能够在列表框中输入带有静态标题的第一行。另外,我可以使用以下命令在多行中导入数据:
me.lstusers.additem变量A和“;” &me.lstusers.additem VariableB 依此类推,直到第6列。第七列将在以后的过程中更新字符串“ Checked”。
所以我想做的是,一旦完成第1行的检查,第1行的第7列应使用字符串“ Checked”更新 然后继续第2行。
我的代码是: lstUsers.Column(everify,i)=“已检查”
变量“ everify”的静态枚举值为8,而“ i”是整数变量,For循环中的更改 因此它将更改为-lstUsers.Column(8,1)=“已检查”
但是我收到错误消息“ Object Required”
答案 0 :(得分:1)
https://msdn.microsoft.com/en-us/vba/access-vba/articles/listbox-column-property-access
您可以使用Column属性在多列组合框或列表框中引用特定的列或列和行的组合。 只读变体。
(强调我的)
因此:您可以阅读它们,但不能直接更新列表框列中的显示值。
(尝试时会出现“需要对象”错误,这很有趣。)
您将不得不重新考虑您的方法。
每次更改都更新并重新分配完整值列表字符串。
或者使用行源类型“表”,并使用本地表作为数据缓冲区,在其中更新值,然后lstUsers.Requery
。
我的猜测是,后者将是更简洁的代码。