2011-05-24 16 views
1

我有以下的VBA代码,它应该显示来自另一个隐藏表单的数据表单。VBA Excel数据表不能显示正确的输入和字段

Sub CoverageBssEntry() 

    Application.ScreenUpdating = False 
    Sheets("myhiddensheet").Select 
    Range("myTable[#All]").Select 
    ActiveSheet.ShowDataForm 

End Sub 

当我运行这个时,数据表单不包含此表的标签和输入框。

任何帮助真的很感激,因为它让我疯狂!我唯一的选择是花时间来构建自定义的用户表单,而这会做得很好。

回答

1

的解决办法是使用:

ActiveSheet.Cells(x,y).Select 

之前调用.ShowDataForm,就像一个瞬间!

1

您无法选择隐藏的工作表。反正在.Select陈述并非必要

尝试

Sheets("myhiddensheet").ShowDataForm 
+0

但我有更多的表格内的表?如果我不选择表格,这将有意义吗?另外 - 在excel文档中是否有引用/指针提到了showdataform的局限性。 – Shyam 2011-05-25 13:27:52

+0

这个答案是假的 - 你可以选择一个隐藏表格,你需要一个.Select语句。 – Shyam 2011-05-25 13:44:02

+0

工作表(“Nmae”)。选择使工作表“名称”处于活动状态,但是如果隐藏“名称”。选择错误。而.ShowDataForm对指定的工作表对象不起作用 – 2011-05-25 19:58:21

1

我认为有ShowDataForm命令真正的约束。如果在特定范围内调用VBA外部,它可以正常工作。但是,一旦编码到VBA中,即使记录了一个宏来执行该操作,它也只会返回被引用工作表中第一个表的表单。 我不知道为什么。也许是因为showdataform事件绑定到工作表,而不是在调用时选择的表或列表。对不起大家。也许微软将在未来改善这一点。