В этой статье мы узнаем, как изменить формулу в ячейках диапазона на значения с помощью VBA в Microsoft Excel.

Исходные данные для этого примера состоят из данных о продажах. Данные о продажах содержат информацию о количестве товаров, проданных сотрудниками в разных городах. Последняя строка и столбец содержат формулу суммы для определения общего количества товаров, проданных в определенном городе конкретным сотрудником.

Мы хотим преобразовать все формулы на активном листе в значения.

Чтобы преобразовать все формулы в значения, мы создали макрос «ChangingFormulasToValue». Этот макрос можно запустить, нажав кнопку «Преобразовать формулы в значения».

ArrowMain

ArrowOutput

На снимке видно, что формула в ячейке H18 преобразована в значение.

Объяснение кода

Установите SourceRng = Range («A1», Range («A1»). SpecialCells (xlCellTypeLastCell))

Приведенный выше код используется для назначения всех ячеек, начиная с ячейки A1, и заканчивая последней ячейкой в ​​книге как диапазон.

SourceRng.Value = SourceRng.Value Приведенный выше код используется для присвоения значения ячейки, пропуская формулу

Пожалуйста, введите код ниже

Option Explicit

Sub ChangingFormulasToValue()

'Declaring variables

Dim SourceRng As Range

'Specify all cells in the active sheet as range

Set SourceRng = Range("A1", Range("A1").SpecialCells(xlCellTypeLastCell))

'Assigning only value of the cell skipping formula of the cell

SourceRng.Value = SourceRng.Value

End Sub

Если вам понравился этот блог, поделитесь им с друзьями на Facebook и Facebook.

Мы будем рады услышать от вас, дайте нам знать, как мы можем улучшить нашу работу и сделать ее лучше для вас. Напишите нам на [email protected]