Как изменить код поиска / замены VBA, чтобы назначить разные параметры для каждой строки в соответствии с номером строки? - PullRequest
1 голос
/ 03 июня 2019

Я пытаюсь получить код, который ищет в строке значение и заменяет указанное значение значением из той же строки, указанной в другом столбце.

Пока я застрял в этом коде. Он ищет указанный «Findtext» во всем столбце и заменяет его первым значением из указанного столбца. Когда цикл перемещается к следующей строке, значение «Findtext» уже было заменено, и поэтому нужное мне значение из строки 2 больше не назначается.

Dim Findtext As String
Dim Replacetext As String
Dim x As Integer

Application.ScreenUpdating = False
Numrows = Sheet1.Range("A1", Range("A1").End(xlDown)).Rows.Count

For x = 1 To Numrows

    Findtext = "Sheet2!$A$1"
    Replacetext = Cells(x, 2)

    Cells.replace What:=Findtext, Replacement:=Replacetext, LookAt:=xlPart, _
    SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
    ReplaceFormat:=False

Next x

Конечной целью является поиск кода «Findtext» из первой строки, замените его на «Replacetext» из первой строки другого столбца, а затем перейдите к следующей строке и повторяйте действие, пока все строки были просмотрены и заменены соответствующими значениями из другого столбца.

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

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