Если вам интересно, как можно заставить Excel проверять орфографию в данных (ошибка ввода), в этой статье вы узнаете, как выполнять автоматическую проверку орфографии в Excel с помощью VBA.

Разберемся на примере:

У нас есть текст, содержащийся в столбце A. См. Ниже снимок

img1

На снимке выше; в ячейках A5 и A11 вы увидите орфографическую ошибку.

Задача — выделить ошибку красным цветом.

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

img2

или нажмите сочетание клавиш ALT + F11, чтобы открыть экран редактора VB.

Введите следующий код в текущий рабочий лист.

Private Sub Worksheet_Change (ByVal Target As Range)

Dim Myrange As Range

Если не пересекается (Target, Range («A1»). CurrentRegion) — это ничто, то

Для каждого Myrange в диапазоне («A1»). CurrentRegion

Если Application.CheckSpelling (Myrange) = False, то

Myrange.Font.Color = vbRed

Иначе: Myrange.Font.Color = vbBlack

Конец Если

Далее

Конец Если

End Sub

img3

После написания вышеуказанного кода ячейки A5 и A11 будут окрашены в красный цвет.

img4

Код работает в текущем регионе; если текст находится в текущем регионе, то приведенный выше код VBA поможет пользователю определить ошибку.

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

Private Sub Worksheet_Change (ByVal Target As Range)

Dim Myrange As Range

Если не пересекается (Target, Range («A1, B3, C5»)), то это ничто

Для каждого Myrange In Union ([A1], [B3], [C5])

Если Application.CheckSpelling (Myrange) = False, то

Myrange.Font.Color = vbRed

Иначе: Myrange.Font.Color = vbBlack

Конец Если

Далее

Конец Если

End Sub

img5

Здесь, на приведенном выше снимке, код выделил ошибку в ячейках B3 и C5; не в ячейках C1 и C7. Это потому, что мы хотим, чтобы код проверял ячейки A1, B3 и C5.

Таким образом, вы можете выделить ошибки с помощью кода VBA.