Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.02.2009, 11:41   #1
Иванов_ДМ
Пользователь
 
Регистрация: 17.02.2009
Сообщений: 96
По умолчанию Как зафиксировать кнопку на экране?

Подскажите, как в Экселе сделать так, чтобы элемент управления (кнопка или картинка) при скроллинге оставалась зафиксированной на экране (то есть была привязана к экрану, а не к ячейке)?
Иванов_ДМ вне форума Ответить с цитированием
Старый 18.02.2009, 12:34   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Рекомендую создать собственную панель инструментов с кнопкой (пользовательское меню) и расположить ее в нужном месте экрана. Скроллинг двигать ее не будет.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 20.09.2011, 16:54   #3
johny_03
Форумчанин
 
Регистрация: 21.01.2011
Сообщений: 134
По умолчанию

для меня эта тема тоже актуальна. Но не понятно, что подразумевалось по словом создать пользовательское меню? Панель инструментов что-ли? если да, то как туда поместить vba кнопку? Если нет то все-же как это сделать?
johny_03 вне форума Ответить с цитированием
Старый 20.09.2011, 17:27   #4
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Чем ворошить прошлое,забили бы в поиск по ветке форума
создать пользовательское меню,и пару тем сразу получите с решениями
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 20.09.2011, 18:03   #5
johny_03
Форумчанин
 
Регистрация: 21.01.2011
Сообщений: 134
По умолчанию

поиск не помог. Как мои кнопки, к которым привязаны макросы, зафиксировать, чтобы скролинг на них не действовал?
johny_03 вне форума Ответить с цитированием
Старый 20.09.2011, 18:59   #6
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Из этого поста

auto_open-в событие открытия книги

auto_close в закрытие книги.

Код:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
auto_close
End Sub

Private Sub Workbook_Open()
auto_open
End Sub
Появится кнопка на панели,жмите на нее
Код:
Sub auto_open()

On Error Resume Next

Set cbar1 = CommandBars.Add(Name:="Custom1", Position:=msoBarTop)
cbar1.Visible = True

Set myControl = Application.CommandBars("Custom1").Controls.Add(Type:=msoControlButton)
With myControl
   .Style = msoButtonCaption
   .Caption = "<кнопка1>"
   .OnAction = "MY_Mcro"
End With

End Sub

Sub MY_Mcro()
MsgBox "вай вай"
End Sub

Sub auto_close()
    On Error Resume Next
    CommandBars("Custom1").Delete
End Sub
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 28.02.2013, 13:37   #7
Bagir
Пользователь
 
Регистрация: 10.10.2012
Сообщений: 19
По умолчанию

+1
Интересная тема. Сейчас пробую найти решение. Своя панель это конечно великолепно, но вот появилась необходимость поместить на лист кнопку, но чтобы при прокрутке листа, кнопка оставалась на месте. То есть как бы висела над листом а не была привязана к нему. Может и не выйдет, не знаю. Может с координатами поиграться попробовать, чтобы двигать кнопку. Увидим... Если кто в курсе, напишите плизз.
Bagir вне форума Ответить с цитированием
Старый 28.02.2013, 13:45   #8
Bagir
Пользователь
 
Регистрация: 10.10.2012
Сообщений: 19
По умолчанию

И правда, ерундовое дело
Код:
CommandButton1.Left = ActiveCell.Left
Кнопка поедет к активной ячейке, ну а дальше каждый колдует как ему надо.
Bagir вне форума Ответить с цитированием
Старый 28.02.2013, 15:10   #9
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
появилась необходимость поместить на лист кнопку, но чтобы при прокрутке листа, кнопка оставалась на месте. То есть как бы висела над листом а не была привязана к нему
Я просто закрепляю первую строку листа (вид - закрепить области),
и размещаю кнопки в первой строке (делаю её высоту побольше для этого)
EducatedFool вне форума Ответить с цитированием
Старый 28.02.2013, 16:48   #10
Bagir
Пользователь
 
Регистрация: 10.10.2012
Сообщений: 19
По умолчанию

Да, как вариант это очень даже удобно. И мне бы даже не пришлось много переписывать, но чтобы дать максимум рабочей области, а в моем случае это актуально, использую .Left
Но способ с колонкой для кнопок беру на вооружение, спасибо!
Bagir вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как зафиксировать событие (изменение) в книге? ЕленаС Microsoft Office Excel 27 31.12.2010 17:34
Как зафиксировать куки? mogul82 PHP 2 22.12.2008 22:28
Как сделать всплывающее сообщение от программы на экране Dissonance Помощь студентам 8 20.05.2008 08:17
как зафиксировать ячейку в таблице? Deceased PHP 1 08.05.2008 18:08
Как зафиксировать ячейку? gait HTML и CSS 4 22.11.2007 18:14