Если вы хотите, чтобы код VBA удалял все конечные пробелы только на активном листе, эта статья определенно вам поможет. Часто мы оставляли пробел в конце по ошибке, а иногда мы копируем данные из Интернета и не замечаем. В этой статье мы узнаем, как избавиться от места, оставшегося по ошибке.

Вопрос): В Excel мы можем использовать функцию ОБРЕЗАТЬ с ПОДСТАВКОЙ И СИМВОЛ, т.е. = ОБРЕЗАТЬ (ПОДСТАВИТЬ (A1, СИМВОЛ (160), «»)), чтобы удалить конечный пробел в конце любого текста.

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

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

Щелкните вкладку «Разработчик». В группе «Код» выберите Visual Basic

img1

Скопируйте следующий код в модуль рабочего листа

Подрезка ()

Dim c As Range, rngConstants As Range

При ошибке Продолжить След.

Установить rngConstants = ActiveSheet.UsedRange.SpecialCells (2, 2)

При ошибке Перейти к 0

Если не rngConstants Is Nothing, то

‘оптимизировать производительность

Application.ScreenUpdating = False

Application.Calculation = xlCalculationManual

‘ячейки обрезки, включая символ 160

Для каждого c In rngConstants

c.Value = Trim $ (Application.Clean (Replace (c.Value, Chr (160), «»)))

Далее c

‘сбросить настройки

Application.ScreenUpdating = True

Application.Calculation = xlCalculationAutomatic

Конец Если

End Sub

img2

  • Это удалит все пробелы в конце.

Примечание. Приведенный выше макрос будет запускаться только на activesheet.

Таким образом, мы можем удалить конечные пробелы в конце, используя код VBA.

image 4