Vba 参数太少。预期1个CSV导入
我正在尝试通过VBA将CSV文件导入Access数据库。我得到一个错误:“运行时错误:'3061':参数太少。应为1。” 我已经尝试过添加单引号,就像其他线程建议的那样,但是没有帮助Vba 参数太少。预期1个CSV导入,vba,csv,ms-access,Vba,Csv,Ms Access,我正在尝试通过VBA将CSV文件导入Access数据库。我得到一个错误:“运行时错误:'3061':参数太少。应为1。” 我已经尝试过添加单引号,就像其他线程建议的那样,但是没有帮助 strSQL = "INSERT INTO Import (" & _ "[Equipment]" & _ ",[Description]" & _ ",[User_status]" & _ ",[Fun
strSQL = "INSERT INTO Import (" & _
"[Equipment]" & _
",[Description]" & _
",[User_status]" & _
",[Functional_Location]" & _
",[Functional_Location_Desc]" & _
",[Cost_Center]" & _
",[Main_WorkCtr]" & _
",[Manufacturer]" & _
",[Model_Number]" & _
",[Serial_Number]" & _
",[Plant_Section])" & _
" SELECT Equipment,Description,User_status" & _
",Functional_Loc,Description3,Cost_Center,Main_WorkCtr" & _
",Manufacturer,Model_number,ManufSerialNo,Plant_section" & _
" FROM [Text" & _
";FMT=Delimited" & _
";HDR=YES" & _
";IMEX=2" & _
";CharacterSet=1252" & _
";DATABASE=" & strFolder & "].[" & strFilename & "]"
CurrentDb.Execute strSQL
我的CSV文件的第一行:设备、说明、用户状态、功能位置、说明3、成本中心、主要工作中心、制造商、型号、制造商序列号、工厂章节
谢谢你的帮助
马克我要偷取vacip的答案,并进一步阐述。我100%同意他的建议: 在CurrentDB.Execute之前添加Debug.Print strSQL并查看它是否正确 好的,有所有的值等等
我建议将Debug.Print的结果粘贴到Access查询向导的SQL窗口中。然后试着运行它。有时,Access通过查询生成器运行错误时,错误更为明显。另外,切换到这个新查询的设计视图,看看是否有任何异常。通常,在这两个视图之间,我可以找出我的查询中存在的任何问题。我将窃取vacip的答案并展开讨论。我100%同意他的建议: 在CurrentDB.Execute之前添加Debug.Print strSQL并查看它是否正确 好的,有所有的值等等
我建议将Debug.Print的结果粘贴到Access查询向导的SQL窗口中。然后试着运行它。有时,Access通过查询生成器运行错误时,错误更为明显。另外,切换到这个新查询的设计视图,看看是否有任何异常。通常,在这两个视图之间,我可以找出我的查询存在的任何问题。在
CurrentDB之前添加Debug.Print strSQL
。执行并查看它是否正确,是否有所有值等。是否缺少DB名称上的方括号?Debug.Print:插入导入([设备],[说明],[用户状态],[功能位置]、[功能位置描述]、[成本中心]、[主要工作中心]、[制造商]、[型号]、[序列号]、[工厂部分])从中选择设备、说明、用户状态、功能位置、说明3、成本中心、主要工作中心、制造商、型号、制造商、工厂部分[Text;FMT=Delimited;HDR=YES;IMEX=2;CharacterSet=1252;DATABASE=G:\GMH EmelőGépek\SAP script]。[SAPőu adatok.csv]尝试在文件名周围添加单引号。(我只是在这里猜测。):“DATABASE='”&strFolder&'.[
所以结果应该是:'DATABASE=G:\GMH EmelőGépek\SAP script]定位CSV文件并没有问题,如果我打开它,我会遇到另一个错误,说它需要读写访问。我尝试了,但还是出现了一个错误。(不是有效路径)在当前数据库之前添加Debug.Print strSQL
。执行并查看它是否正确,是否具有所有值等。是否缺少数据库名称上的方括号?Debug.Print:插入导入([设备],[说明],[用户状态],[功能位置],[功能位置描述],[成本中心],[主要工作中心],[制造商],[型号]、[序列号]、[工厂部分])从[文本;FMT=分隔;HDR=是;IMEX=2;字符集=1252;数据库=G:\GMH EmelőGépek\SAP脚本]中选择设备、说明、功能位置、说明3、成本中心、主要工作中心、制造商、型号、制造商序列号、工厂部分][SAP adatok.csv]尝试在文件名周围添加单引号。(我只是在这里猜测。):“DATABASE=”&strFolder&“]”。[“
因此结果应该是:'DATABASE=G:\GMH EmelőGépek\SAP script']定位CSV文件并没有问题,如果我打开它,我会遇到另一个错误,说它需要读写访问。我尝试了,但还是出现了一个错误。(不是有效路径)最后,我从SAP导出到excel,而不是简单地导入csv。即使在我成功导入数据后,Access仍然会弄乱序列号,因为它想将其存储为数字而不是文本。无论如何,感谢您的帮助!最后,我从SAP导出到excel,而不是简单地导入csv。即使在我naged导入数据访问总是会弄乱序列号,因为它想将序列号存储为数字,而不是文本。无论如何,感谢您的帮助!