自动边框单元格

Auto bordering cells

我正在尝试自动为来自 P13:S 的任何填充单元格添加边框。当宏运行时,我还希望它检测透明单元格并删除当前存在的所有边框。我现在正在使用这个:

Set CD = Workbooks("Savant").Worksheets("Client Details")

Application.ScreenUpdating = False

Dim lngLstCol As Long, lngLstRow As Long

lngLstRow = CD.UsedRange.Rows.Count
lngLstCol = CD.UsedRange.Columns.Count

For Each rngCell In Range(Range("P13:S13"), Cells(lngLstRow, lngLstCol))
    If rngCell.Value <> "" Then
        rngCell.Select
        With Selection.Borders
            .LineStyle = xlNone
        End With
    End If
Next

For Each rngCell In Range(Range("P13:S13"), Cells(lngLstRow, lngLstCol))
    If rngCell.Value > "" Then
        rngCell.Select
        With Selection.Borders
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With
    End If
Next

Application.ScreenUpdating = True

它按要求给单元格加了边框,但它无法从空单元格中删除边框。谁能指出我哪里出错了?

非常感谢

我只是太厚了。将“<>”替换为“=”,它按预期工作。对不起大家。

您可以通过组合您的逻辑来进一步简化您的代码,这样您就不必再循环一次。

For Each rngCell In Range(Range("P13:S13"), Cells(lngLstRow, lngLstCol))
    With rngCell
        If Len(Trim(.Value2)) = 0 Then
            With .Borders
                .LineStyle = xlNone
            End With
        Else
            With .Borders
                .LineStyle = xlContinuous
                .Weight = xlThin
                .ColorIndex = xlAutomatic
            End With
        End If
    End With
Next