powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Запретить "Отправить как вложение"
6 сообщений из 6, страница 1 из 1
Запретить "Отправить как вложение"
    #35809034
Sendie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, как средствами VBA Excel запретить возможность "Отправить как вложение" ?
...
Рейтинг: 0 / 0
Запретить "Отправить как вложение"
    #35809158
alex_gearbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
"Надыбать" ID команды и отключить, перебрав все меню и панели.
...
Рейтинг: 0 / 0
Запретить "Отправить как вложение"
    #35809280
alex_gearbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашёл:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
Option Explicit

Dim CB   As CommandBar          ' переменная  "панель инструментов"
Dim CBC  As CommandBarControl   ' переменная  "элемент управления"
Dim CBB  As CommandBarButton    ' переменная  "кнопка панели инструментов"
Dim CBCs As CommandBarControls  ' переменная  "элементЫ управления"

Const ConstID As Integer =  2188  ' ID команды "Сообщение (как вложение)..."

Sub GetControlID()
' определение ID команды с выводом на лист MS Excel
	Dim RowId As Integer
	Dim CB As CommandBar
	Dim CBC As CommandBarControl
	    RowId =  2 
	    For Each CB In CommandBars
	        Cells(RowId,  1 ) = CB.Name
	        For Each CBC In CommandBars(CB.Name).Controls
	            Cells(RowId,  2 ) = CBC.ID
	            Cells(RowId,  3 ) = CBC.Caption
	            RowId = RowId +  1 
	        Next
	    Next
End Sub


Sub cmd_Off()
' отключение команды
    For Each CB In CommandBars
        For Each CBC In CommandBars(CB.Name).Controls
            If CBC.ID = ConstID Then
                CBC.Enabled = False
            End If
        Next
    Next
    
    Set CBC = Nothing
    Set CB = Nothing

    Set CBCs = Application.CommandBars.FindControls(ID:=ConstID)
    For Each CBB In CBCs
        CBB.Enabled = False
    Next CBB

    Set CBCs = Nothing
    Set CBB = Nothing  
End Sub


Sub cmd_On()
' включение команды
    For Each CB In CommandBars
        For Each CBC In CommandBars(CB.Name).Controls
            If CBC.ID = ConstID Then
                CBC.Enabled = True
            End If
        Next
    Next
    
    Set CBC = Nothing
    Set CB = Nothing

    Set CBCs = Application.CommandBars.FindControls(ID:=ConstID)
    For Each CBB In CBCs
        CBB.Enabled = True
    Next CBB

    Set CBCs = Nothing
    Set CBB = Nothing    
End Sub
...
Рейтинг: 0 / 0
Запретить "Отправить как вложение"
    #35809284
alex_gearbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Объявление CB и CBC в GetControlID излишне, закомментируйте.
...
Рейтинг: 0 / 0
Запретить "Отправить как вложение"
    #35809334
Sendie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex_gearbox
Спасибо большое за код! :) разобрался и отключил)
...
Рейтинг: 0 / 0
Запретить "Отправить как вложение"
    #35809337
alex_gearbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sendie , пожалуйста.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Запретить "Отправить как вложение"
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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