我有一个查询,我在 Access 2010 中通过 VBA 执行。查询的结果应该是 AFR,但它返回 AFR,下面有一个额外的行。我添加了“'”字符以使额外的行可见。
TempHold = rs.GetString
Debug.Print "'" & TempHold & "'"
返回这个:
'AFR
'
但应该返回这个:
'AFR'
我尝试使用以下代码,但没有一个 If 语句评估为 True。代码应该检查“”、vbNewLine 或 vbCrLf 字符,但没有一个评估为真。有谁知道会导致换行的任何其他字符?
If Right(TempHold, 1) = " " Then
TempHold = Left(TempHold, Len(TempHold) - 1)
ElseIf Right(TempHold, 2) = vbNewLine Or Right(TempHold, 2) = vbCrLf Then
TempHold = Left(TempHold, Len(TempHold) - 2)
End If
最佳答案
用:
Asc(Right(TempHold, 1))
获取 Ascii 字符代码。
找到字符代码后(如您在评论中所写,为 13),您可以使用代码将其删除:
If Right(TempHold, 1) = Chr(13) Then
TempHold = Left(TempHold, Len(TempHold) - 1)
End If
在这种情况下,您也可以使用
vbCr
,它与 Chr(13)
相同。