Я не думаю, что макет - это то, что вам нужно, но этого может быть достаточно: вы можете использовать трассировку зависимых / прецедентов
Он находится на панели инструментов Формулы, в разделе Аудит формул (и в том же месте есть опция для удаления стрелок).
Подробнее
Тем не менее, мне не нравится выше. Теперь, это действительно зависит от ваших потребностей, но я быстро написал этот VBa для вас
Sub Button5_Click()
'PLEASE EDIT THIS FIRST BIT.
Dim row As Integer
row = 1 ' THE STARTING ROW IN YOUR EXCEL SHEET
Dim numberOfRows As Integer
numberOfRows = 5 'THE TOTAL NUMBER OF ROWS YOUR WORKSHEET HAS
Dim columnWithFormula As String
columnWithFormula = "E" ' THE COLUMN WHERE THE FORMULAs ARE (I suspect you are using B if your example is accurate))
Dim colourIndex As Integer
colourIndex = 26 ' WHAT COLOUR TO HIGHLIGHT COLUMNS. GOOGLE VBa COLOR INDEX
'AND STOP EDITING :)
For row = 1 To numberOfRows
If range(columnWithFormula & row).Value <> "" Then
Dim result As String
result = range(columnWithFormula & row).Formula
result = Replace(result, "(", " ")
result = Replace(result, ")", " ")
result = Replace(result, "-", " ")
result = Replace(result, "+", " ")
result = Replace(result, "*", " ")
result = Replace(result, "/", " ")
result = Replace(result, "=", " ")
result = Replace(result, ",", " ")
Dim cells() As String
cells = Split(Trim(result), " ")
For j = 0 To UBound(cells)
range(cells(j)).Interior.ColorIndex = colourIndex
Next j
End If
Next row
End Sub
Выше приведено следующее (я включил формулу, чтобы вы могли видеть, в каких ячейках была формула)
Макрос не идеален, но я действительно не знаю ваших потребностей, поэтому, если у вас (согласно примеру в вашем посте) есть простая формула, она должна работать нормально.
Обратите внимание, это изменит цвет фона ячейки, и отмена не будет работать! Так что, если вы уже используете подсветку, вам нужно обновить код! Это также означает, что после запуска этого макроса вам нужно будет вручную выбрать рабочий лист и вернуть цвет фона на ваш выбор ...
Чтобы расширить это, вы можете обновить цикл for и заменить его на
For Each Cell in ActiveSheet.UsedRange.Cells
'logic
Next
проверить каждую ячейку на листе, чтобы увидеть, есть ли где-нибудь формула ...