将工作簿对象传递给variables

我有这个代码,它给了我一个编译错误:期望的function或variables。
我如何正确编码。

Sub test() Dim wb As Workbook Dim FiletoOpen FiletoOpen = Application.GetOpenFilename(filefilter:="Text Files (*.csv), *.csv", MultiSelect:=False) Set csv_wb = Workbooks.OpenText(Filename:=FiletoOpen, startRow:=1, DataType:=xlDelimited, TextQualifier:= _ xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False _ , Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _ Array(2, 1), Array(3, 2), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), _ Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1), Array(15, 1))) End Sub 

如果我使用Set csv_wb = Workbooks.Open (FiletoOpen)它工作正常。
但是在文件中有特定的字段,我需要以Text格式。
所以我不能使用这个。 但是,当我使用上述,它给了我错误。
任何帮助将非常感激。

你已经声明了wb但使用csv_WB试试这个。

UNTESTED

 Sub test() Dim csv_WB As Workbook Dim FiletoOpen FiletoOpen = Application.GetOpenFilename(filefilter:="Text Files (*.csv), *.csv", MultiSelect:=False) If FiletoOpen = False Then Exit Sub Workbooks.OpenText Filename:=FiletoOpen, startRow:=1, DataType:=xlDelimited, TextQualifier:= _ xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False _ , Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _ Array(2, 1), Array(3, 2), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), _ Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1), Array(15, 1)) Set csv_WB = ActiveWorkbook End Sub