Перейти к содержанию
СофтФорум - всё о компьютерах и не только

Проверка на правильность написанных данных


Рекомендуемые сообщения

Всем привет. Можете помочь с макросом, который будет проверять каждую ячейку столбца и в том случае, если в тексте ячейки присутствует ошибка в проставлении скобок, останавливать работу макроса и выводить сообщение, в каком месте листа макрос обнаружил ошибку. Например, запись «Текст(текст)» будет правильно, а такая – «Текст)текст(» или «((( )) () ))» будут неправильными и для них следует вывести сообщение об ошибке. 

Ссылка на комментарий
Поделиться на другие сайты

Для каждой текущей ячейки. Предположим, что в S содержимое ячейки.

NumOpen=0
NumClose=0
Flag=0
kmax=len(S)
for k=1 to kmax
  S1=mid$(S,k,1)
  if S1="(" then NumOpen=NumOpen+1
  if S2=")" then NumClose=NumClose+1
  if NumClose>NumOpen then Flag=1
next k
if NumOpen<>NumClose then Flag=1

if Flag=1 then Остановить и Вывести сообщение

Остановить и вывести сообщение сделайте сами.

Ссылка на комментарий
Поделиться на другие сайты

Можно покрасить все неверные ячейки красным:

NumColomn=5
for NumRow=1 to NumRowMax
  NumOpen=0
  NumClose=0
  Flag=0
  kmax=len(S)
  for k=1 to kmax
    S1=mid$(S,k,1)
    if S1="(" then NumOpen=NumOpen+1
    if S2=")" then NumClose=NumClose+1
    if NumClose>NumOpen then Flag=1
  next k
  if Flag=1 then Cells(NumRow, NumColomn).Interior.Color = vbRed
Next NumRow

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

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...