Excel 读取单元格并使用文本作为VBA公式的输入

Excel 读取单元格并使用文本作为VBA公式的输入,excel,vba,Excel,Vba,我已经寻找了很长一段时间来为我的问题找到一个简单的解决方案,但我就是找不到。我的问题是,我想引用一个单元格,并将其用作VBA代码中的文本 例如: 假设电池=C104 VBA可以做到: wb2.Sheets("Cell").Range("F8:F22").Copy wb1.Sheets("asd").Range("B7:B21").PasteSpecial 这不起作用,因为它实际上没有使用单元格中的文本。我尝试过使用cell().Text和.value,但它们不起作用。您有多个工作簿和多个工作表

我已经寻找了很长一段时间来为我的问题找到一个简单的解决方案,但我就是找不到。我的问题是,我想引用一个单元格,并将其用作VBA代码中的文本

例如: 假设电池=C104

VBA可以做到:

wb2.Sheets("Cell").Range("F8:F22").Copy
wb1.Sheets("asd").Range("B7:B21").PasteSpecial

这不起作用,因为它实际上没有使用单元格中的文本。我尝试过使用
cell().Text
.value
,但它们不起作用。

您有多个工作簿和多个工作表,它们可能是cell的父级。您需要明确引用单元格,并将其
文本
用作工作表名称,而不依赖Activesheet作为默认父项

dim myWS as string
myWS = wb1.Sheets("asd").Range("C104").value  '◄ this gets the value of cell. I don't know if I have referenced the correct workbook and worksheet
wb2.Sheets(myWS).Range("F8:F22").Copy _
  destination:=wb1.Sheets("asd").Range("B7")

“在我的VBA代码中将其用作文本”是什么意思?您的意思是要将其加载到变量中吗?Y您提到了单元格C104,但提供的代码没有引用混淆的单元格。您想要单元格地址还是单元格内容?你是想把它存储在一个变量中,还是仅仅把它发布到其他地方的另一个单元格中?对不起,这个问题写得不好。假设我已将Location设置为String,然后Location=C104我的第一行是wb2.Sheets(“Location”).Range(……我通过删除“”来解决问题这是一个相当愚蠢的错误,我仍然在思考语法哈哈。我想在将来我会发布更多的代码来给出一个更好的想法。谢谢你帮我研究它!