使用Instr函数时获取运行时错误2465

时间:2018-01-08 20:26:51

标签: access-vba

我试图将日期从变量中包含的字符串中拉出来。

变量是RWPSheetvalues(96) RWPSheetvalues(96)包含字符串“AIT_13_11_11_Metro_Sky Park 13_UR” 日期是11/11/2013

所以,我想我会使用Instr函数删除前几个字符直到日期开头(这可能是3到5个字符 - 取决于字符串)。所以代码行如下: CharPosition = InStr(1,{RWPSheetvalues(96)],“ - ”,1) 这使得运行时错误为2465。

任何想法为何出错?

2 个答案:

答案 0 :(得分:1)

你可以使用这个花哨的表达:

ThisDate = CDate("20" & Replace(Left(Split(RWPSheetvalues(96), "_", 2)(1), 8), "_", "/"))

剥离第一部分,选择接下来的八个字符(日期),用/,替换 _,前缀< / em>本世纪为20,最后转换为日期值。

答案 1 :(得分:0)

您可以将Split函数与下划线分隔符一起使用,然后将相应的元素提供给DateSerial函数。