Как отключить "Сохранить и отправить" в Excel 2010 (на ленте "Файл" и в панели быстрого доступа)?

Я пытаюсь переименовать мой файл myfile.xlsb в myfile.zip, затем открыть zip архив, создать в них папку customUI, поместить в эту папку файл customUI.xml с данными

<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
               <backstage>
                              <tab idMso="TabShare" visible="false"/> 
               </backstage>
</customUI>

А потом попробовал с данными

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon>
<officeMenu>
<menu idMso="FileSendMenu" enabled="false"/>
</officeMenu>
</ribbon>
</customUI>

а потом

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon>
<officeMenu>
<menu idMso="FileSendMenu">
<button idMso="FileSendAsAttachment" enabled="false"/>
<button idMso="FileEmailAsXpsEmailAttachment" enabled="false"/>
</menu>
</officeMenu>
</ribbon>
</customUI>

Затем я положил в файл.rels

<Relationship Id="rId5" 
Type="http://schemas.microsoft.com/office/2006/relationships/
ui/extensibility" Target="customUI/customUI.xml"/>

между обязательными тегами и измените этот файл в zip-архиве. Затем я переименовываю myfile.zip в myfile.xlsb и открываю его, но все кнопки отправки все еще живы. Также я пытался изменить все ссылки ( http://schemas.microsoft.com/office/2006/relationships/ от http://schemas.microsoft.com/office/2009/07/customui), но безрезультатно

Этот также не скрывает эти кнопки.

Application.CommandBars("Worksheet Menu Bar").Controls("File").Controls("Send To").Enabled = False
Application.CommandBars("Worksheet Menu Bar").Controls("File").Controls("Save & Send").Enabled = False

Мне нужно отключить этот и управлять им из VBA.

Control Name:   SendCopySendToMailRecipient ; FileEmailAsPdfEmailAttachment ; FileEmailAsXpsEmailAttachment ; SendUsingEmail ; GroupSendUsingEmail
Control Type:   toggleButton ; button ; button ; task ; group
Tab Set:    None (Not in the Ribbon) ; None (Not in the Ribbon) ; None (Not in the Ribbon) ; None (Backstage View) ; None (Backstage View)
Tab:    None (Not in the Ribbon) ; None (Not in the Ribbon) ; None (Not in the Ribbon) ; TabShare ; TabShare
Group:  - ; None (Not in the Ribbon) ; None (Not in the Ribbon) ; GroupShare ; GroupShare
Parent Control:     - ; FileSendMenu ; FileSendMenu ; Share ; Share
Secondary Parent Control:   - ; - ; - ; - ; SendUsingEmail          
Policy ID:  3738 ; 15730 ; 15731 ; 18209 ; 18166
Ordering:       645 ; 1049 ; 1050 ; 2219 ; 2220

1 ответ

Решение

Это скрывает почти все - возможно, помогает:

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
   <ribbon startFromScratch="true">
   <qat>
     <documentControls>
    <control 
       idMso="WindowSwitchWindowsMenuExcel"
       screentip="SWITCH EXCEL FILE"
       supertip="Click here to switch from this workbook to another open excel file."/>
    <control 
       idMso="FilePrint"
       screentip="PRINT FILE"
       supertip="Click here to enable the print menu."/>
     </documentControls>
    </qat>
    </ribbon>
</customUI>
Другие вопросы по тегам