gpt4 book ai didi

vba - 将变量传递给 Left(string, VariableHere) 不起作用

转载 作者:行者123 更新时间:2023-12-04 21:16:18 26 4
gpt4 key购买 nike

我有一个数据导入文件,其中包含不带逗号的日期(即 January 1 2015 )。 Excel 不会将此识别为日期,我需要使用这些日期来查找其他日期(即日期 + 行程长度以查找行程的最后一天等)

我正在尝试使用 VBA 来完成此操作并降低逻辑但遇到错误。

我正在获取日期的长度(January 1 2015)、5 个右侧字符(2015)、整个长度的左侧减去 5 个右侧字符(JANUARY 1),然后将这些变量与逗号组合插入:Left(value-5) & ", " & Right(value, 5)
我正在使用这段代码:

    'correct date from JANUARY 1 2000 to JANUARY 1, 2000 so excel can recognize as date

LengthTrpDpt = Len(wb1.Sheets("BL Import").Cells(ioi, TrpDepCol)) 'length of date
LengthRightTrpDPt = Right(wb1.Sheets("BL Import").Cells(ioi, TrpDepCol), 5) 'finds right 5 of date " 2015"
NewListedDate = Left(wb1.Sheets("BL Import").Cells(ioi, TrpDepCol), LengthTrpDpt - 5) & ", " & LengthRightTrpDPt

问题在于 NewListedDate 变量。我可以将 LengthTrpDpt - 5 部分更改为一个数字,它工作正常。出于某种原因,我在这里不能有一个等式。我尝试在单独保存的变量(LengthMath = LengthTrpDpt - 5)中执行方程,并改用 LengthMath,但这也不起作用。

LengthTrpDpt 工作正常,并且 MsgBox 的数字正确。有任何想法吗?谢谢!

最佳答案

你应该只是 Split()日期字符串来获取您的三个部分,然后将它们重新组合在一起,但是您想要:

Dim a
a = Split(wb1.Sheets("BL Import").Cells(ioi, TrpDepCol))
NewListedDate = a(0) & " " & a(1) & ", " & a(2)

关于vba - 将变量传递给 Left(string, VariableHere) 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32000994/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com