我对VBA非常熟悉,并且已经在谷歌上搜索到了这一点。这是一次很棒的学习经历,非常感谢你们所有优秀的人。
我试图让我的宏根据数据输入表中的名称在表中查找一行,然后查找该行中第一个打开的单元格,最后将数据输入表的日期复制到该单元格中。
到目前为止,我的代码将选择正确的行和定义的行中的第一个空单元格,但我无法同时执行这两项操作而不返回错误。它为cl行返回一个“类型不匹配”错误:
Sub TestModule2()
Dim sh As Worksheet
Dim rw As Object
Dim clm As Object
Dim cl As Object
Set sh = ThisWorkbook.Sheets("database")
Set rw = sh.Range("A:A").Find(ThisWorkbook.Sheets("data input").Listobjects("Table1").Range(2, 1).Value)
Set clm = sh.Range("Table35").Rows.Find(What:="", LookIn:=xlValues, LookAt:=xlWhole)
Set cl = sh.Listobjects("Table35").Range(rw, clm)
cl.Select
End Sub
我正在使用cl.Select进行测试,下一个挑战是找出正确的方法:
.value=本工作簿。表格(“数据输入”)。范围(“B1”)
我已经尝试更改rw、cl和clm的变量;使用listObjects。ListRows;保存/关闭/打开以尝试强制重置缓存;还有无数其他的东西。我已经成功地分别运行了rw和clm行,但它只是一起生成不同的错误。
在这一点上,我没有VBA如何工作的基本知识来完全理解这个问题。如有任何协助,我们将不胜感激。