VBA EXCEL: добавлена ​​возможность выделять ячейки, когда значение изменяется в моем макросе - PullRequest
0 голосов
/ 25 сентября 2018

Создан код VBA для создания новой рабочей книги, куда можно скопировать вставленный диапазон из другой рабочей книги.Теперь я хотел бы добавить возможность выделить все ячейки, которые могут измениться, во вновь созданной книге.

Это мой код:

Sub Copy_Value_To_New_Workbook()
'Step 1 Copy the data
    Sheets("ACTIVITY LOG").Range("A1:O10000").Copy
'Step 2 Create a new workbook
    Workbooks.Add
'Step 3 Paste the data
    ActiveSheet.Paste Destination:=Range("A1")
'Step 4 Turn off application alerts
    Application.DisplayAlerts = False
'Step 5 Save the newly created workbook
    ActiveWorkbook.SaveAs _
    Filename:="Activity_log_piano.xlsx"
'Step 6 Turn application alerts back on
    Application.DisplayAlerts = True
'Step 7 highlights cells when changed
End Sub

спасибо за вашу помощь !!

1 Ответ

0 голосов
/ 25 сентября 2018

Вы можете добавить условное форматирование в новую книгу.
Ваша книга будет пустой при первом ее создании, поэтому любое значение в любой ячейке является изменением.

Вы можете улучшить код, используя переменную для хранения ссылки на книгу, как сказал @Nathan_sav в своем комментарии к вопросу.

Sub Test()

    Sheet1.Range("A1:O10000").Copy
    Workbooks.Add

    ActiveSheet.Paste Destination:=Range("A1")
    With ActiveSheet.Range("A1:O10000")
        .FormatConditions.Add Type:=xlExpression, Formula1:="=A1<>"""""
        .FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
        With .FormatConditions(1).Interior
            .PatternColorIndex = xlAutomatic
            .ThemeColor = xlThemeColorAccent3
            .TintAndShade = -0.249946592608417
        End With
    End With

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...