你如何比较vba中单元格的ASCII值?

问题描述 投票:-1回答:1

我正试图在一张纸上循环并突出显示“空白”单元格。其中一些空白单元格有空格,换行符等,并且效果不佳。这是我的代码:

Dim Kibble as String


For i = 1 To coor(1)
Columns(i).Select
    For k = 1 To coor(2)
        Kibble = Cells(k, i).Value
        If IsEmpty(Cells(k, i)) Then
            Cells(k, i).Interior.ColorIndex = 5
        ElseIf Asc(Kibble) <= 32 Then
            Cells(k, i).Interior.ColorIndex = 5
        End If

在If语句中我首先突出显示所有真正的空白值,然后在ElseIf部分中我试图突出显示存储在该字符串中的ASCII值小于32的所有单元格。我无法得到它但运行时没有错误。

vba excel-vba
1个回答
0
投票

我怀疑kibble在某种程度上是一个空的文字字符串。

尝试以下方法(尽管您仍然对两种情况应用相同的格式)

If Kibble = vbNullString Then
    Cells(k, i).Interior.ColorIndex = 5
ElseIf Asc(Kibble) <= 32 Then
    Cells(k, i).Interior.ColorIndex = 5
End If

如果失败,请在发生错误时提供Kibble的值。

© www.soinside.com 2019 - 2024. All rights reserved.