将string值设置为基于Visual Basic中的单元格的variables

我有一个简单的问题应该是简单的回答。 我正在尝试使string反映一个单元格的值。 它将导入的电子表格的命名scheme是“(CSV)&(”[1] .csv“)的值,没有空格,CSV是B5的值,如果variablesCSV = WASHINGTON,我需要行读

Windows(WASHINGTON[1].csv).Activate 

以下是我的。 我在CSVvariables中出现错误。

 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 As Long但是你期待一个String数据types。 这几乎肯定会引起任何非数字值的不匹配错误。

声明Dim CSV as String并应该解决它。

注意:这假定指定的文件已经打开。 如果没有,您将在.Activate语句中出现错误。

你也应该避免使用ActivateSelect方法。 这里有一些资源可以解释为什么:

如何避免在Excel VBAmacros中使用select

请在将来更好地描述你的实际问题是什么 – 如果你得到一个错误信息,指出这个信息是什么,它在哪一行上升。 这对于那些试图帮助你的人是非常有帮助的。