Dynami c форматирование ячеек в Excel - PullRequest
0 голосов
/ 21 февраля 2020

У меня есть VBA, который будет извлекать строки из другой таблицы. Проблема в том, что я пытаюсь динамически форматировать ячейки, которые заполнены информацией о строках. На данный момент я отформатировал строку 11, однако, как я могу установить ее так, чтобы любые заполненные строки были отформатированы в ячейке с белыми рамками. а когда они не заселены, они просто будут серыми.

Sub Searchdata()
Dim Lastrow As Long
Dim count As Integer
Lastrow = Sheets("Data").Cells(Rows.count, 1).End(xlUp).Row
Y = 11
For X = 2 To Lastrow
If Sheets("Data").Cells(X, 1) = Sheet3.Range("B3") Then
   Sheet3.Cells(Y, "A") = Sheets("Data").Cells(X, 1)
   Sheet3.Cells(Y, "B") = Sheets("Data").Cells(X, 2)
   Sheet3.Cells(Y, "C") = Sheets("Data").Cells(X, 3) & " " & Sheets("data").Cells(X, 4) _
                            & " " & Sheets("data").Cells(X, 5) & " " & Sheets("Data").Cells(X, 6)
   Sheet3.Cells(Y, "D") = Sheets("Data").Cells(X, 7)
   Y = Y + 1
End If
Next X
End Sub

enter image description here

1 Ответ

0 голосов
/ 21 февраля 2020

Сразу после вашего оператора if добавьте следующие строки:

    With range(Cells(Y, 1), Cells(Y, "D"))
        .Interior.ColorIndex = xlNone
        With .Borders
            .LineStyle = xlContinuous
            .Color = vbBlack
            .Weight = xlThin
        End With
    End With
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...