Nejdříve technická.
Nemám rád věci vytvářené nějakými nástroji, protože si tam většinou přidávají něco, co není potřeba.
Vytvořte si svůj první ribbon
ručně - otestujte nejlépe ve 2007 a pak už jen modifikujte. Je to časově náročnější než programem, ale víte přesně co měníte a děláte to jednou za uherský rok, takže se to dle mého vyplatí.
Excel 2007 - zkusil jsem obě přílohy a ani jednou se mi ribbon nezobrazil. Takže manuální úprava:
1. customUI14.xml - přejmenováno na customUI.xml
2. customUI.xml - upraven kód:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon>
<tabs>
<tab id="Tab1" label="Print GM">
<group id="Group2" label="Print Output">
<checkBox id="Checkbox1" label="Anglicky" getPressed="Checkbox1_getPressed" onAction="Checkbox1_onAction" />
<checkBox
id="Checkbox2" label="Slovensky" getPressed="Checkbox2_getPressed" onAction="Checkbox2_onAction" />
<separator id="Separator1" />
<button id="Button2" imageMso="AppointmentColor1" label="Vytvor plan" size="large" onAction="Macro1" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>
3. - .rels - upraven kód
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
<Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/>
<Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/>
<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/>
<Relationship Id="rIdMyRibbon1" Type="http://schemas.microsoft.com/office/2006/relationships/ui/extensibility" Target="customUI/customUI.xml"/>
</Relationships>
Ribbon se ve 2007 zobrazuje.
A ještě 2 rady
Podle způsoobu použití (dlouhodobé = po celou dobu otevření excelu, tedy řádově hodiny nebo krátkodobé) je třeba ještě řešit zapomínání excelu ve spojení s globálními proměnnými (tedy i checkboxy
kuk sem).
V onAction
vždy přidávejte celou cestu ke kódu -
NazevProjektu.NazevModulu.NazevProcedury. Pokud použijete dva soubory s vlastním ribbonem, v něm bude stejně pojmenovaný modul a stejná procedura, bude se volat ta správná. A toto se vám stane, pokud jako já budete používat svá již hotová řešení ;) .
citovat