Бесконечное переключение между двумя командами
aghient
Дата: Пятница, 27.01.2017, 17:45 |
Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Здравствуйте, подскажите пожалуйста, как сделать макрос, чтобы он переключался между двумя списками, сейчас у меня макрос переключается так: "ком.1"-"ком.2" и всё затор, нужно, чтобы он переключался между ком.1 и ком.2 постоянно, при использовании макроса, то есть "ком.1"-"ком.2"-"ком.1"-ком.2" и т.д.
Здравствуйте, подскажите пожалуйста, как сделать макрос, чтобы он переключался между двумя списками, сейчас у меня макрос переключается так: "ком.1"-"ком.2" и всё затор, нужно, чтобы он переключался между ком.1 и ком.2 постоянно, при использовании макроса, то есть "ком.1"-"ком.2"-"ком.1"-ком.2" и т.д. aghient
Сообщение отредактировал aghient - Пятница, 27.01.2017, 17:48
Ответить
Сообщение Здравствуйте, подскажите пожалуйста, как сделать макрос, чтобы он переключался между двумя списками, сейчас у меня макрос переключается так: "ком.1"-"ком.2" и всё затор, нужно, чтобы он переключался между ком.1 и ком.2 постоянно, при использовании макроса, то есть "ком.1"-"ком.2"-"ком.1"-ком.2" и т.д. Автор - aghient Дата добавления - 27.01.2017 в 17:45
Karataev
Дата: Пятница, 27.01.2017, 17:55 |
Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1342
Репутация:
535
±
Замечаний:
0% ±
Excel
[vba]
Код
Sub Макрос1() Dim strFormula1 As String Application.ScreenUpdating = False Select Case Range("K2").Validation.Formula1 Case "=буквы" strFormula1 = "=цифры" Case "=цифры" strFormula1 = "=буквы" End Select With Range("K2:K11").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=strFormula1 .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With Range("K1").Select Application.ScreenUpdating = True End Sub
[/vba]
[vba]
Код
Sub Макрос1() Dim strFormula1 As String Application.ScreenUpdating = False Select Case Range("K2").Validation.Formula1 Case "=буквы" strFormula1 = "=цифры" Case "=цифры" strFormula1 = "=буквы" End Select With Range("K2:K11").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=strFormula1 .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With Range("K1").Select Application.ScreenUpdating = True End Sub
[/vba]
Karataev
Ответить
Сообщение
[vba]
Код
Sub Макрос1() Dim strFormula1 As String Application.ScreenUpdating = False Select Case Range("K2").Validation.Formula1 Case "=буквы" strFormula1 = "=цифры" Case "=цифры" strFormula1 = "=буквы" End Select With Range("K2:K11").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=strFormula1 .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With Range("K1").Select Application.ScreenUpdating = True End Sub
[/vba]
Автор - Karataev Дата добавления - 27.01.2017 в 17:55
aghient
Дата: Воскресенье, 29.01.2017, 06:48 |
Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Снова здравствуйте, подскажите еще, пожалуйста, куда в Ваш код поставить переключение цвета кнопки, чтобы было понятно, что списки между собой переключаются. В макросе 2 макрорекодером записаны цвета, смысл в том, что если выбран 1 список - цифры, то кнопка серая, а если есть переключение на 2 список - буквы, то кнопка - синяя. У меня не 2003, а 2016 excel, знаю, что цветовая схема везде разная, но это не беда, цвета я поправлю, если что.
Снова здравствуйте, подскажите еще, пожалуйста, куда в Ваш код поставить переключение цвета кнопки, чтобы было понятно, что списки между собой переключаются. В макросе 2 макрорекодером записаны цвета, смысл в том, что если выбран 1 список - цифры, то кнопка серая, а если есть переключение на 2 список - буквы, то кнопка - синяя. У меня не 2003, а 2016 excel, знаю, что цветовая схема везде разная, но это не беда, цвета я поправлю, если что. aghient
Сообщение отредактировал aghient - Воскресенье, 29.01.2017, 06:50
Ответить
Сообщение Снова здравствуйте, подскажите еще, пожалуйста, куда в Ваш код поставить переключение цвета кнопки, чтобы было понятно, что списки между собой переключаются. В макросе 2 макрорекодером записаны цвета, смысл в том, что если выбран 1 список - цифры, то кнопка серая, а если есть переключение на 2 список - буквы, то кнопка - синяя. У меня не 2003, а 2016 excel, знаю, что цветовая схема везде разная, но это не беда, цвета я поправлю, если что. Автор - aghient Дата добавления - 29.01.2017 в 06:48
Karataev
Дата: Воскресенье, 29.01.2017, 08:18 |
Сообщение № 4
Группа: Проверенные
Ранг: Старожил
Сообщений: 1342
Репутация:
535
±
Замечаний:
0% ±
Excel
В поле "Имя" (оно слева от строки формул) присвойте кнопке имя "Кнопка". Макрос использует это имя, чтобы обращаться к кнопке.
[vba]
Код
Sub Макрос1() Dim strFormula1 As String Application.ScreenUpdating = False Select Case Range("K2").Validation.Formula1 Case "=буквы" strFormula1 = "=цифры" ActiveSheet.Shapes("Кнопка").Fill.ForeColor.RGB = 14277081 Case "=цифры" strFormula1 = "=буквы" ActiveSheet.Shapes("Кнопка").Fill.ForeColor.RGB = 15123099 End Select With Range("K2:K11").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=strFormula1 .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With Range("K1").Select Application.ScreenUpdating = True End Sub
[/vba]
В поле "Имя" (оно слева от строки формул) присвойте кнопке имя "Кнопка". Макрос использует это имя, чтобы обращаться к кнопке.
[vba]
Код
Sub Макрос1() Dim strFormula1 As String Application.ScreenUpdating = False Select Case Range("K2").Validation.Formula1 Case "=буквы" strFormula1 = "=цифры" ActiveSheet.Shapes("Кнопка").Fill.ForeColor.RGB = 14277081 Case "=цифры" strFormula1 = "=буквы" ActiveSheet.Shapes("Кнопка").Fill.ForeColor.RGB = 15123099 End Select With Range("K2:K11").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=strFormula1 .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With Range("K1").Select Application.ScreenUpdating = True End Sub
[/vba]
Karataev
Ответить
Сообщение В поле "Имя" (оно слева от строки формул) присвойте кнопке имя "Кнопка". Макрос использует это имя, чтобы обращаться к кнопке.
[vba]
Код
Sub Макрос1() Dim strFormula1 As String Application.ScreenUpdating = False Select Case Range("K2").Validation.Formula1 Case "=буквы" strFormula1 = "=цифры" ActiveSheet.Shapes("Кнопка").Fill.ForeColor.RGB = 14277081 Case "=цифры" strFormula1 = "=буквы" ActiveSheet.Shapes("Кнопка").Fill.ForeColor.RGB = 15123099 End Select With Range("K2:K11").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=strFormula1 .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With Range("K1").Select Application.ScreenUpdating = True End Sub
[/vba]
Автор - Karataev Дата добавления - 29.01.2017 в 08:18
aghient
Дата: Воскресенье, 29.01.2017, 08:21 |
Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Karataev, спасибо огромное, всё работает
Karataev, спасибо огромное, всё работает aghient
Ответить
Сообщение Karataev, спасибо огромное, всё работает Автор - aghient Дата добавления - 29.01.2017 в 08:21
Karataev
Дата: Воскресенье, 29.01.2017, 09:38 |
Сообщение № 6
Группа: Проверенные
Ранг: Старожил
Сообщений: 1342
Репутация:
535
±
Замечаний:
0% ±
Excel
У меня не 2003, а 2016 excel, знаю, что цветовая схема везде разная, но это не беда, цвета я поправлю, если что.
Если использовать такой код: [vba][/vba] то версия Excel'я не влияет на цвет. Цвет ячейки можно узнать так: [vba]Код
ActiveCell.Interior.Color
[/vba]
У меня не 2003, а 2016 excel, знаю, что цветовая схема везде разная, но это не беда, цвета я поправлю, если что.
Если использовать такой код: [vba][/vba] то версия Excel'я не влияет на цвет. Цвет ячейки можно узнать так: [vba]Код
ActiveCell.Interior.Color
[/vba]Karataev
Сообщение отредактировал Karataev - Воскресенье, 29.01.2017, 09:41
Ответить
Сообщение У меня не 2003, а 2016 excel, знаю, что цветовая схема везде разная, но это не беда, цвета я поправлю, если что.
Если использовать такой код: [vba][/vba] то версия Excel'я не влияет на цвет. Цвет ячейки можно узнать так: [vba]Код
ActiveCell.Interior.Color
[/vba]Автор - Karataev Дата добавления - 29.01.2017 в 09:38
Wasilich
Дата: Вторник, 31.01.2017, 01:07 |
Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация:
326
±
Замечаний:
0% ±
2003
Буквы - цифры я тоже побалуюсь.
Ответить
Сообщение Буквы - цифры я тоже побалуюсь. Автор - Wasilich Дата добавления - 31.01.2017 в 01:07