Vba 在Visual Basic中将字符串值设置为基于单元格的变量
我有一个简单的问题,应该很容易回答。我试图使字符串反映单元格的值。它将导入的电子表格的命名方案是“(CSV)&(“[1].CSV”),没有空格。CSV是B5的值。如果变量CSV=WASHINGTON,我需要读取该行Vba 在Visual Basic中将字符串值设置为基于单元格的变量,vba,excel,Vba,Excel,我有一个简单的问题,应该很容易回答。我试图使字符串反映单元格的值。它将导入的电子表格的命名方案是“(CSV)&(“[1].CSV”),没有空格。CSV是B5的值。如果变量CSV=WASHINGTON,我需要读取该行 Windows(WASHINGTON[1].csv).Activate 下面是我的情况。我的CSV变量有一个错误 Sub Import_CSV() Import_CSV Macro Dim CSV As Long Application.DisplayAlert
Windows(WASHINGTON[1].csv).Activate
下面是我的情况。我的CSV变量有一个错误
Sub Import_CSV()
Import_CSV Macro
Dim CSV As Long
Application.DisplayAlerts = False
Windows("Records.xlsm").Activate
Worksheets("Data").Activate
CSV = Cells(5, "B").Value
Windows(CSV & "[1].csv").Activate
Rows("1:2").Select
Range("A2").Activate
Selection.Cut ... etc
非常感谢您的帮助。您已声明
CSV为Long
,但您需要的是字符串
数据类型。这几乎肯定会导致任何非数值的不匹配错误
将Dim CSV声明为String
,这样应该可以解决它
注意:这假定指定的文件已打开。如果未打开,则在.Activate
语句中会出现错误
您还应该避免使用Activate
和Select
方法。这里有一些资源解释了原因:
请在将来更好地描述您的实际问题——如果您收到错误消息,请指出该消息是什么,以及它在哪一行引发。这对试图帮助您的其他人非常有帮助。我的错误是什么?为什么不告诉我们错误是什么,然后也许我们可以告诉您如何修复它。您已将
CSV声明为Long
,但您需要的是字符串
数据类型。这几乎肯定会导致任何非数字值的不匹配错误。非常正确。我的短语一点也不好。对此我深表歉意。找到了一个回答我问题的网站: