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

Вход

Регистрация

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

 

= Мир MS Excel/Как отключить макрос если в заданной ячейке не Дата - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как отключить макрос если в заданной ячейке не Дата (Макросы/Sub)
Как отключить макрос если в заданной ячейке не Дата
ruslax Дата: Вторник, 05.05.2020, 15:04 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 1
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Добрый день!Подскажите, пожалуйста, как прописать следующее:

через функцию ДВССЫЛ создано правило выбора списка. При одном из условий выбирается дата, в остальных случаях текстовая информация.

Нужно, чтобы когда в ячейке оказывается Дата, имелась возможность выбрать вторую дату в той же ячейке. В остальных случаях - только текст с возможностью редактирования.

и ещё: при выборе определенного текста из этого всплывало окно, где можно было бы дописать текст и присоединить его к выбранному из списка.

Сейчас Макрос прописан так:

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("G13:h25")) Is Nothing And Target.Cells.Count = 1 Then
Application.EnableEvents = False
newVal = Target
Application.Undo
oldval = Target
If Len(oldval) <> 0 And oldval <> newVal Then
Target = Target & " " & Chr(10) & newVal
Else
Target = newVal
End If
If Len(newVal) = 0 Then Target.ClearContents
Application.EnableEvents = True
End If
End Sub

Надо, чтобы в диапазоне G3:G25 существовала возможность выбора нескольких дат, а текст оставался уникальным.

Спасибо!


Сообщение отредактировал ruslax - Вторник, 05.05.2020, 15:19
 
Ответить
СообщениеДобрый день!Подскажите, пожалуйста, как прописать следующее:

через функцию ДВССЫЛ создано правило выбора списка. При одном из условий выбирается дата, в остальных случаях текстовая информация.

Нужно, чтобы когда в ячейке оказывается Дата, имелась возможность выбрать вторую дату в той же ячейке. В остальных случаях - только текст с возможностью редактирования.

и ещё: при выборе определенного текста из этого всплывало окно, где можно было бы дописать текст и присоединить его к выбранному из списка.

Сейчас Макрос прописан так:

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("G13:h25")) Is Nothing And Target.Cells.Count = 1 Then
Application.EnableEvents = False
newVal = Target
Application.Undo
oldval = Target
If Len(oldval) <> 0 And oldval <> newVal Then
Target = Target & " " & Chr(10) & newVal
Else
Target = newVal
End If
If Len(newVal) = 0 Then Target.ClearContents
Application.EnableEvents = True
End If
End Sub

Надо, чтобы в диапазоне G3:G25 существовала возможность выбора нескольких дат, а текст оставался уникальным.

Спасибо!

Автор - ruslax
Дата добавления - 05.05.2020 в 15:04
Pelena Дата: Вторник, 05.05.2020, 15:15 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 15752
Репутация: 3432 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
ruslax, прочитайте Правила форума, дайте теме более конкретное название, отражающее суть задачи.
Оформите код тегами с помощью кнопки # в режиме правки поста и приложите файл с примером


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
Сообщениеruslax, прочитайте Правила форума, дайте теме более конкретное название, отражающее суть задачи.
Оформите код тегами с помощью кнопки # в режиме правки поста и приложите файл с примером

Автор - Pelena
Дата добавления - 05.05.2020 в 15:15
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как отключить макрос если в заданной ячейке не Дата (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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