Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Макрос зависимости значения от количества выбранных кнопок типа checkbox, Работа с макросами, VBA, элементами ActiveX
 
JayBhagavan,будьте уверены, что не в пустую! Вы мне очень помогли!
Макрос зависимости значения от количества выбранных кнопок типа checkbox, Работа с макросами, VBA, элементами ActiveX
 
В общем я попробовал по-своему переписать код. Вроде работает та как надо. Только получился очень нагруженным. Все равно спасибо, господа! Без вас эта проблема осталась бы в голове) Если у вас есть решения по рационализации кода, буду благодарен еще больше)
Код
Private Sub CheckBox1_Click()
    jjj_color_change
End Sub
 
Private Sub CheckBox2_Click()
    jjj_color_change
End Sub
 
Private Sub CheckBox4_Click()
    jjj_color_change
End Sub
 
Sub jjj_color_change()
            '3
             If CheckBox1.Value = True And CheckBox2.Value = True And CheckBox4.Value = True Then Image1.BackColor = vbRed Else _
             '2
             If CheckBox1.Value = True And CheckBox2.Value = True And CheckBox4.Value = False Then Image1.BackColor = vbYellow Else _
             If CheckBox1.Value = True And CheckBox2.Value = False And CheckBox4.Value = True Then Image1.BackColor = vbYellow Else _
             If CheckBox1.Value = False And CheckBox2.Value = True And CheckBox4.Value = True Then Image1.BackColor = vbYellow Else _
             '1
             If CheckBox1.Value = True And CheckBox2.Value = False And CheckBox4.Value = False Then Image1.BackColor = vbWhite Else _
             If CheckBox1.Value = False And CheckBox2.Value = False And CheckBox4.Value = True Then Image1.BackColor = vbWhite Else _
             If CheckBox1.Value = False And CheckBox2.Value = True And CheckBox4.Value = False Then Image1.BackColor = vbWhite Else _
             '0
             If CheckBox1.Value = False And CheckBox2.Value = False And CheckBox4.Value = False Then Image1.BackColor = vbBlack
End Sub
Макрос зависимости значения от количества выбранных кнопок типа checkbox, Работа с макросами, VBA, элементами ActiveX
 
JayBhagavan,по Вашему файлу всё работает. Спасибо. Возможно при копировании с браузера нарушается текстовый формат кода и vba его перестает понимать. И все же для нескольких таких групп на листе такой код не подходит. Он берет в расчет все чекбоксы на листе, а мне нужно только в конкретной ячейке.
Макрос зависимости значения от количества выбранных кнопок типа checkbox, Работа с макросами, VBA, элементами ActiveX
 
Karataev,мне уже поздно переназначать номера чекбоксам. Проект уже слишком большой и завязан на других параметрах, кроме того я периодически добавляю/удаляю кнопки, соответственно "порядковость" иногда путается
Макрос зависимости значения от количества выбранных кнопок типа checkbox, Работа с макросами, VBA, элементами ActiveX
 
Karataev,вроде разобрался. Спасибо большое.
Как только теперь сделать, если в группе номера checbox идут вразброс, не по порядку?
Макрос зависимости значения от количества выбранных кнопок типа checkbox, Работа с макросами, VBA, элементами ActiveX
 
JayBhagavan, Ваш код у меня не работает. Обжигает на 22-й строке - выделяет желтым ": Image1.BackColor = vbRed" и выдает run-time error '424' Object required!
Макрос зависимости значения от количества выбранных кнопок типа checkbox, Работа с макросами, VBA, элементами ActiveX
 
Цитата
Karataev написал:
Этот макрос рассчитан на то, что у всех CheckBox'ов имена начинаются "CheckBox", а затем порядковый номер.
Спасибо за приложенный работающий файл. Суть верная. Но мне как раз-то не нужна привязка к свойству Caption кнопок checkbox'ов,  иначе в рабочем проекте не работает. Можно ли как-то унифицировать? Например привязать к свойству name. Вообще у меня по заданию несколько таких групп на листе. Соответственно нумерация checkbox не всегда идет по порядку. Нужен какой-то универсальный код, который можно было бы копировать для каждой группы, поправляя только значения привязки.
Изменено: deftone - 01.12.2016 00:02:43
Макрос зависимости значения от количества выбранных кнопок типа checkbox, Работа с макросами, VBA, элементами ActiveX
 
Всем привет! Уже который день бьюсь над задачей. Помогите пожалуйста! На листе есть 3 кнопки checkbox и графический объект activex (image1). Задача в следующем: написать макрос, при котором в случае выбора всех checkbox image1 заливается красным цветом; в случае выбора 2х любых checkboxcheck box - желтым цветом; при выборе одного - белым цветом. Если ни один checkbox не выбран, то image залит чёрным. Выбран здесь имеется ввиду стоит галочка в окне кнопки.
Код надо чтобы выполнялся автоматически, без привязки к горячим клавишам.
Макрос сохранения отдельных листов в общем файле формата PDF, Работа с VBA
 
Как еще можно усовершенствовать код?
Например, чтобы имя файла PDF автоматически собиралось из данных в нескольких ячейках; чтобы при сохранении не происходило наложение на имеющийся файл, а выполнялось сохранение новой копии или выводился запрос "сохранить имеющийся или создать копию?"; чтобы при открытом файле PDF не возникало системной ошибки, а выводилось предупреждение "Для сохранения завершите работу с открытым файлом PDF!".
Еще после сохранения у меня остаются выделенные листы, что блокирует работу с кнопками ActiveX на листе. Каким кодом можно отменить выделение 2-х листов?
Макрос сохранения отдельных листов в общем файле формата PDF, Работа с VBA
 
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
       ThisWorkbook.Path & "\" & "PDF файл.pdf", Quality:=xlQualityStandard, _
       IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
Макрос сохранения отдельных листов в общем файле формата PDF, Работа с VBA
 
Да, Это помогло. Спасибо!
Просто интересно почему ошибка была?
Макрос сохранения отдельных листов в общем файле формата PDF, Работа с VBA
 
Файл сохраненный. Вот что выдаёт:
Макрос сохранения отдельных листов в общем файле формата PDF, Работа с VBA
 
Все перепечатываю букву в букву, а выдаёт run time error 1004 :(
Изменено: deftone - 07.11.2016 21:19:11
Макрос сохранения отдельных листов в общем файле формата PDF, Работа с VBA
 
Друзья, помогите пожалуйста!! Подскажите макрос для кнопки activex, чтобы при нажатии отдельные листы, например лист1 и лист3, сохранялись в одном файле pdf. Сохранение файла желательно в текущем месте файла xlsm и с аналогичным названием.

Версия excel и vba 2010
Самопроизвольное смещение элементов ActiveX в скрытых строках при открытии файла, работа с макросами
 
Другое решение - подтягивать кнопки при помощи команды  ***.top=123

... Этот вариант не подошёл...
Изменено: deftone - 02.11.2016 15:32:22
Самопроизвольное смещение элементов ActiveX в скрытых строках при открытии файла, работа с макросами
 
Частично нашёл решение проблемы в группировании кнопок скрытых строк. Пока не знаю как это будет выглядеть в проектируемой таблице - там таких элементов много.

...Помогло, но в большой таблице нужно группировать кнопки поячеечно и ставить в свойствах каждой группы "перемещать но не изменять размеры"...
Изменено: deftone - 02.11.2016 15:32:05
Самопроизвольное смещение элементов ActiveX в скрытых строках при открытии файла, работа с макросами
 
Игорь, Пришлите пример, пожалуйста.
Изменено: deftone - 31.10.2016 12:08:46
Самопроизвольное смещение элементов ActiveX в скрытых строках при открытии файла, работа с макросами
 
Всем привет!
Прошу помочь с решением проблемы при работе с элементами ActiveX.
Суть такая. Мне необходимо, чтобы при активации одной из кнопок вскрывалась строка, которая тоже содержит кнопки. В исходном виде все работает нормально. Но, если сохранить файл со скрытой строкой, то потом при открытии этого файла кнопка всплывающей строки съезжает вниз! Очень нужно победить данную проблему. Уже пробовал менять свойства через формат элемента управления: в версии Office 2007 помогло, а в 2010й кнопки совсем пропали с экрана. Возможно есть альтернативные решения. Буду благодарен любому ответу.
Изменено: deftone - 02.11.2016 14:45:19
Страницы: 1
Наверх