Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Сообщение выводится по цвету ячейки - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Сообщение выводится по цвету ячейки (Макросы/Sub)
Сообщение выводится по цвету ячейки
tasdel Дата: Четверг, 12.08.2021, 07:08 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 144
Репутация: 0 ±
Замечаний: 20% ±

Excel 2007
Здравствуйте, уважаемые колдуны и шаманы!!!
Возникла проблема с сообщениями, которые выводятся по цвету ячейки. Одно сообщение, которое выполняет код, выводится по цвету ячейки номер -15, а другое сообщение "ошибка"выводится по цвету ячейки - xlnone. После запуска сообщения, которое реагирует на цвет ячейки номер 15, следом выскакивает второе сообщение, которое реагирует на цвет ячейки xlnone. По идее так быть не должно.
[vba]
Код

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell.Interior.ColorIndex = xlNone Then
MsgBox "ошибка"
End If

If ActiveCell.Interior.ColorIndex = 15 Then
Da = MsgBox("Добавить таблицу?", vbYesNo, "")
If Da = vbYes Then
' код
End If
End If
End Sub
[/vba]


Сообщение отредактировал tasdel - Четверг, 12.08.2021, 07:12
 
Ответить
СообщениеЗдравствуйте, уважаемые колдуны и шаманы!!!
Возникла проблема с сообщениями, которые выводятся по цвету ячейки. Одно сообщение, которое выполняет код, выводится по цвету ячейки номер -15, а другое сообщение "ошибка"выводится по цвету ячейки - xlnone. После запуска сообщения, которое реагирует на цвет ячейки номер 15, следом выскакивает второе сообщение, которое реагирует на цвет ячейки xlnone. По идее так быть не должно.
[vba]
Код

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell.Interior.ColorIndex = xlNone Then
MsgBox "ошибка"
End If

If ActiveCell.Interior.ColorIndex = 15 Then
Da = MsgBox("Добавить таблицу?", vbYesNo, "")
If Da = vbYes Then
' код
End If
End If
End Sub
[/vba]

Автор - tasdel
Дата добавления - 12.08.2021 в 07:08
Erjoma1981 Дата: Четверг, 12.08.2021, 07:51 | Сообщение № 2
Группа: Проверенные
Ранг: Участник
Сообщений: 66
Репутация: 25 ±
Замечаний: 0% ±

Excel 2010, 2019
Здравствуте.
1 вариант.
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If ActiveCell.Interior.ColorIndex = xlNone Then
        MsgBox "ошибка"
        Exit Sub
    End If
    
    If ActiveCell.Interior.ColorIndex = 15 Then
        Da = MsgBox("Добавить таблицу?", vbYesNo, "")
        If Da = vbYes Then
        ' код
        End If
    End If
End Sub
[/vba]

2 вариант.
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If ActiveCell.Interior.ColorIndex = xlNone Then
        MsgBox "ошибка"
    ElseIf ActiveCell.Interior.ColorIndex = 15 Then
        Da = MsgBox("Добавить таблицу?", vbYesNo, "")
        If Da = vbYes Then
        ' код
        End If
    End If
End Sub
[/vba]


Сообщение отредактировал Erjoma1981 - Четверг, 12.08.2021, 07:51
 
Ответить
СообщениеЗдравствуте.
1 вариант.
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If ActiveCell.Interior.ColorIndex = xlNone Then
        MsgBox "ошибка"
        Exit Sub
    End If
    
    If ActiveCell.Interior.ColorIndex = 15 Then
        Da = MsgBox("Добавить таблицу?", vbYesNo, "")
        If Da = vbYes Then
        ' код
        End If
    End If
End Sub
[/vba]

2 вариант.
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If ActiveCell.Interior.ColorIndex = xlNone Then
        MsgBox "ошибка"
    ElseIf ActiveCell.Interior.ColorIndex = 15 Then
        Da = MsgBox("Добавить таблицу?", vbYesNo, "")
        If Da = vbYes Then
        ' код
        End If
    End If
End Sub
[/vba]

Автор - Erjoma1981
Дата добавления - 12.08.2021 в 07:51
tasdel Дата: Четверг, 12.08.2021, 09:04 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 144
Репутация: 0 ±
Замечаний: 20% ±

Excel 2007
Erjoma1981, Все без изменений, работает также как и раньше.
 
Ответить
СообщениеErjoma1981, Все без изменений, работает также как и раньше.

Автор - tasdel
Дата добавления - 12.08.2021 в 09:04
tasdel Дата: Четверг, 12.08.2021, 09:12 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 144
Репутация: 0 ±
Замечаний: 20% ±

Excel 2007
Erjoma1981, В новом файле работает и старый код кстати тоже, значит проблема у меня. Спасибо!
 
Ответить
СообщениеErjoma1981, В новом файле работает и старый код кстати тоже, значит проблема у меня. Спасибо!

Автор - tasdel
Дата добавления - 12.08.2021 в 09:12
tasdel Дата: Четверг, 12.08.2021, 09:23 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 144
Репутация: 0 ±
Замечаний: 20% ±

Excel 2007
Erjoma1981, Нашел ошибку.
 
Ответить
СообщениеErjoma1981, Нашел ошибку.

Автор - tasdel
Дата добавления - 12.08.2021 в 09:23
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Сообщение выводится по цвету ячейки (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!