VBA: L oop Работает - Ошибка не выбрасывается. Не выполняет - PullRequest
0 голосов
/ 17 марта 2020

Надеюсь, у вас все хорошо. Я нахожусь в процессе проработки листа Excel, который имеет 132 строки данных. В столбце H этих данных у меня есть ячейки значений, разделенных запятыми, которые содержат список стран. Проблема со списком стран в том, что я продолжаю получать его в нестандартном формате. Я пытаюсь стандартизировать это сейчас. С некоторой помощью я написал макрос VBA, который должен быть l oop через столбец H со стандартизованными значениями и их нестандартизированными значениями на отдельном листе Sheets (4). В столбце A Sheets4 у меня есть нестандартизированное значение, в столбце B Sheets (4) у меня есть стандартизированные значения, которые я хочу перенести и затем заменить для различных нестандартных значений в столбце A.

Однако, когда я запускаю макрос, он выглядит так, как будто он вообще не работает. Запуск занимает около 5 минут, и после этого ни одно из изменений не произошло. Вот некоторые вещи, которые я пытался убедиться, что ни одна из очевидных вещей не работает с макросом:

  1. Я попытался сознательно вставить точный текст ошибки, который у меня есть в столбце A Sheets (4) из Sheets4, так что он автоматически подбирает текст, поскольку они являются точным изображением и зеркалом друг друга.
  2. Я зашел в «Виды», «Локальное окно» и проследил переменная шаг за шагом после пошагового выполнения кода, чтобы убедиться, что я действительно следую правильной процедуре и что в каждом случае набирает и обнаруживает различные ошибки в каждом случае.

enter image description here

попытался включить и выключить компьютер.

Есть ли у кого-нибудь мысли о том, что мне следует сделать, чтобы запустить этот макрос?

Sub Translate_Country_Name()
    'Variable Names
    Dim Ary As Variant
    Dim i As Long

    With Sheets(4)
        Ary = .Range("A2", .Range("B" & Rows.Count).End(xlUp))
    End With
    With Sheets(1).Range("H:H")
        For i = 1 To UBound(Ary)
            .Replace Chr(160), " ", xlPart, , , , False, False
            .Replace Ary(i, 1), Ary(i, 2), xlPart, , True, , False, False
        Next i
    End With

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