Код ниже по идее должен стать ответом на поставленный вопрос. Но, видимо, некоторые кнопки нельзя вставить на ленту отдельно. Например, кнопка TableRowsDeleteExcel располагается внутри раскрывающегося списка TableDeleteRowsAndColumnsMenu. Вот кнопка этого списка вставляется без проблем:
Код |
---|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<customUI xmlns="[URL=http://schemas.microsoft.com/office/2009/07/customui>]http://schemas.microsoft.com/office/2009/07/customui">[/URL];
<ribbon startFromScratch="false">
<tabs>
<tab id="ппп" label="апа">
<group id="аав" label="апр">
<control idMso="TableDeleteRowsAndColumnsMenu" />
</group>
</tab>
</tabs>
</ribbon>
</customUI> |
Я хотел предложить решение через макрос, и попробовал выполнить команду TableRowsDeleteExcel с помощью процедуры обратного вызова в VBA:
Код |
---|
Application.CommandBars.ExecuteMso ("TableRowsDeleteExcel") |
Но так она тоже не вызвалась, хотя другие команды вызываются. Конечно, можно вручную написать функцию удаления текущей строки на VBA, например, так:
Код |
---|
ActiveCell.EntireRow.Delete
|
но хотелось бы всё же задействовать уже имеющиеся команды.
Какие у кого будут соображения?