powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Excel (VBA) - Скрыть и отобразить панели инструментов ??
18 сообщений из 18, страница 1 из 1
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33382871
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скрываю все панели в книге Excel:

Код: plaintext
1.
2.
3.
4.
Private Sub Workbook_WindowActivate(ByVal Wn As Window)
      For Each tlbr In Toolbars
        tlbr.Visible = False
     Next
End Sub

Вопрос: как отобразить только те панели, которые были отображены на момент их скрытия??

Аленочка тм
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33383079
Что-то я не понял. Все скрываешь, все и отображай.
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33383135
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пользователь2Что-то я не понял. Все скрываешь, все и отображай.

А ты поробуй запустить макрос отображения у себя, посмотришь что получится, посмеёшься...

Код: plaintext
1.
2.
3.
4.
Private Sub Workbook_WindowActivate(ByVal Wn As Window)
      For Each tlbr In Toolbars
        tlbr.Visible = true
     Next
End Sub

Мне нужно отображать не всё, а только то, что существовало первоначально.
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33383339
Tosh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Dim tlbrs() As Boolean
Private Sub TBHide()
    Dim tlbr As Variant
    Dim i As Integer
    ReDim tlbrs( 1  To Toolbars.Count) As Boolean
    'ïðÿ÷åì âñå
    For i =  1  To Toolbars.Count
        tlbrs(i) = Toolbars(i).Visible
        Toolbars(i).Visible = False
    Next i
End Sub

Private Sub TBShow()
    Dim i As Integer
    'âîçâðàùàåì ñòàòóñû
    For i =  0  To UBound(tlbrs)
        Toolbars(i).Visible = tlbrs(i)
    Next i
End Sub
Решение не оригинальное, но действующее - в начале программы - прячешь все тулбары и запоминаешь кто был с какой видимостью ... в конце - просто восстанавливаешь статусы
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33383482
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tosh, ты как всегда можешь и знаешь всё. За это я тебя и люблю...
И не только за это..

Аленочка тм
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33383499
Tosh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за признание ...
Для тебя готов найти любые ответы ;)
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33385745
Аленочка, откуда вы взяли коллекцию Toolbars? Ее вроде нет в офисе, есть CommandBars.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Private intI As Integer
Private arr() As Variant

Sub HideCommandBars()
    Dim cb As CommandBar
    
    ' Worksheet Menu Bar нельзя скрыть.
    On Error Resume Next
    
    For Each cb In Application.CommandBars
        If cb.Visible Then
            ReDim Preserve arr(intI)
            arr(intI) = cb.Name
            intI = intI +  1 
            cb.Visible = False
        End If
    Next
End Sub

Sub ShowCommandbars()
    For intI = LBound(arr) To UBound(arr)
        Application.CommandBars(arr(intI)).Visible = True
    Next
End Sub
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33386285
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пользователь2Аленочка, откуда вы взяли коллекцию Toolbars? Ее вроде нет в офисе, есть CommandBars.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Private intI As Integer
Private arr() As Variant

Sub HideCommandBars()
    Dim cb As CommandBar
    
    ' Worksheet Menu Bar нельзя скрыть.
    On Error Resume Next
    
    For Each cb In Application.CommandBars
        If cb.Visible Then
            ReDim Preserve arr(intI)
            arr(intI) = cb.Name
            intI = intI +  1 
            cb.Visible = False
        End If
    Next
End Sub

Sub ShowCommandbars()
    For intI = LBound(arr) To UBound(arr)
        Application.CommandBars(arr(intI)).Visible = True
    Next
End Sub


Спасибо огромное всё работает, только вот почему вы называете меня то на вы, то на ты...это без всяких претензий...просто интересно...вы очень часто мне помогаете...за это вам спасибо ещё раз...
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33386425
Аленочкатолько вот почему вы называете меня то на вы, то на ты...это без всяких претензий...просто интересно
Пишу автоматически. Хорошо, буду на "ты", если не против?
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33389030
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пользователь2 Аленочкатолько вот почему вы называете меня то на вы, то на ты...это без всяких претензий...просто интересно
Пишу автоматически. Хорошо, буду на "ты", если не против?

Уважаемый Пользователь2, (к сожалению не знаю твоего :-) имени)..
У меня возник ещё один вопрос: а как можно убрать/восстановить главное меню в книге Excel ??
Кстати почему ты пишешь под гостем?
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33389117
Есть 2 варианта.

1. Т.к. у "Worksheet menu bar" нельзя установить свойтсво Visible, можно скрыть все элементы меню.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Public Sub RemoveMenuBar()
    Dim cb As CommandBar
    Dim cbc As CommandBarControl
    
    Set cb = Application.CommandBars("Worksheet menu bar")
    
    For Each cbc In cb.Controls
        cbc.Visible = False
    Next

    Set cb = Nothing
End Sub

2. Еще проще. У объекта CommandBar есть свойство Enabled.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Public Sub RemoveMenuBar2()
    Dim cb As CommandBar
    
    Set cb = Application.CommandBars("Worksheet menu bar")
    
    cb.Enabled = False

    Set cb = Nothing
End Sub

АленочкаКстати почему ты пишешь под гостем?
Неохота регистрироваться. :)
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33389134
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To Пользователь2

Отлично! Спасибо!
А насчёт регистрации: регистрируйся быстрее, в ПТ пообщаемся...

Аленочка тм
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33389146
Так и без регистрации можно пообщаться. :)
Сейчас посмотрю твой топик про сводные таблицы.
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #33389215
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пользователь2Так и без регистрации можно пообщаться. :)
Сейчас посмотрю твой топик про сводные таблицы.

Да нет, без регистрации вроде бы в ПТ не получится...лично у меня под гестом, нет прав для создания сообщений в ПТ..
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #36996068
Continental
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
что мне теперь делать? запустил эти макросы и у меня пропали все панели интсрументов и даже не могу теперь в vba зайти. как опять отобразить все панели и меню?
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #36996192
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Continentalдаже не могу теперь в vba зайти
Alt+F11
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #37022469
valik65
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Люди помогите!
Случайно ввёл этот код и пропала панель!
Как всё вернуть?
Подскажите
Вот этот код

Public Sub RemoveMenuBar2()
Dim cb As CommandBar

Set cb = Application.CommandBars("Worksheet menu bar")

cb.Enabled = False

Set cb = Nothing
End Sub
...
Рейтинг: 0 / 0
Excel (VBA) - Скрыть и отобразить панели инструментов ??
    #37311083
GWolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
valik65Люди помогите!
Случайно ввёл этот код и пропала панель!
Как всё вернуть?
Подскажите
Вот этот код

Public Sub RemoveMenuBar2()
Dim cb As CommandBar

Set cb = Application.CommandBars("Worksheet menu bar")

cb.Enabled = False

Set cb = Nothing
End Sub

Добрый день!
Делаем вот такой модуль:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Public Sub RemoveMenuBar3()
    Dim cb As CommandBar
    
    Set cb = Application.CommandBars("Worksheet menu bar")
    
    cb.Enabled = True

    Set cb = Nothing
End Sub[/quot]

и все!

А у меня вопрос: - После всех этих действий (по отключению) остается, в правом верхнем углу красный крестик, по которому пользователь может закрыть проект, а хотелось бы что бы он его закрывал по нажатию на кнопку мною созданною да еще и на определенном листе книги! Как отключить, или сделать неактивным, красный крестик?

Всем спасибо!
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Excel (VBA) - Скрыть и отобразить панели инструментов ??
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]