Предположим, что значение 4 не должно быть со значением 18 во всех строках моих данных.

Как я могу заменить значение 4 на любое значение для всех строк, которые имеют значение 18?

Смотрите картинку ниже:

1 ответ1

1

Исходя из моего понимания вашего вопроса, я предлагаю макрос VBA для автоматизации этой задачи. Я предполагаю, что вы ищете фактическое число 4, а не символ 4. Поэтому, если это 44, его следует игнорировать и не пытаться заменить.

На рабочем листе нажмите ALT + F11, чтобы получить доступ к VBA Editor. Из меню Вставка вставить модуль. Дважды щелкните имя модуля в левой панели, чтобы получить доступ к редактору кода. Теперь вставьте в него следующий код.

Sub Replace4()

Dim MyRange As Range
Dim RowCount As Long
Dim ColCount As Integer
Dim i, j, k
Const Replaced = 0
Set MyRange = Range("B2:F12")

RowCount = MyRange.Rows.Count
ColCount = MyRange.Columns.Count

For i = 1 To RowCount
    If MyRange.Columns(1).Cells(i) = 18 Then
        For j = 2 To ColCount
            If MyRange.Columns(j).Cells(i) = 4 Then
               MyRange.Columns(j).Cells(i).Value = Replaced
            End If
        Next j
    End If

Next i

End Sub

Обратите внимание, что вы должны установить постоянную замену (см. Const Replaced = 0 ) на нужное значение и указать свой диапазон в строке Set MyRange = Range("B2:F12")

Убедитесь, что первый столбец этого диапазона действительно является столбцами, в которых вы проверяете наличие 18.

Сохраните лист Excel в формате xlsm для Excel 2007 и выше (лист Macro Enabled).

Теперь на рабочем листе нажмите ALT + F8, чтобы открыть диалоговое окно «Макрос» и запустить этот макрос с именем Replace4.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .