我有以下代码,它接受字符串temp,其中肯定有两个数字由"("分隔,然后对它们进行一些数学运算。尽管使用CDec将它们转换为十进制数,但在尝试进行数学运算时,我还是遇到了类型不匹配错误。我能做错什么吗?谢谢。
tempArry = Split(temp, " ")
tolTemp = (CDec(tempArry(LBound(tempArry)) + tempArry(LBound(tempArry) + 2))) / 2
noms(j) = tolTemp
tols(j) = tolTemp - CDec(tempArry(LBound(tempArry)))
根据你的评论,似乎你假设你可以添加两个字符串作为数字。
由于输入(temp
变量)是字符串,因此您试图添加的数组元素也是字符串,因此当您写入tempArry(LBound(tempArry)) + tempArry(LBound(tempArry) + 2)
时,输出将是两个字符串的连接(即112.34117.89
-因此类型不匹配)。
要解决这个问题,在之前将它们都转换为十进制,尝试将它们相加:
tolTemp = (CDec(tempArry(LBound(tempArry))) + CDec(tempArry(LBound(tempArry) + 2))) / 2