読者です 読者をやめる 読者になる 読者になる

CGメソッド

CG制作に関してのヒント

MENU

【PowerPoint】好きなマクロを並べたカスタムタブメニューの作成方法について

よく使うマクロはアドイン化していたのですが、たまにアドインにすると使えないマクロがあったので、違う方法を模索してみました。

min.hatenablog.jp

カスタムタブメニューの作成方法について

概要

  1. 好きなマクロ入りのパワポデータを作成(pptm)

  2. Zipにして中身を編集

  3. タブメニューの作成(xml)

  4. タブメニューの登録(.rels)

  5. もとの名前に戻す

マクロ入りpptmデータの作成

  • Alt+F11でVBAを起動して好きなマクロを追加していく

f:id:min0124:20170128160316j:plain

pptmの中身を開く

そもそもオフィスのデータはただのZIPデータだったりするので、拡張子をZIPにして解凍してしまいます。

min.hatenablog.jp

タブメニューの作成(xml)

メモ帳を開いてタブメニューの記述を追加しcustomUI.xmlという名前で保存

※このときUFT-8で保存しないと、最後にエラーを吐くので注意!

f:id:min0124:20170128160739j:plain

<?xml version="1.0" encoding="utf-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  <ribbon startFromScratch="false">
    <tabs>
      <tab id="MyTab1" label="my menu">
        <group id="Group1" label="tool_01">
          <button id="Button1-1" label="画像一括挿入" imageMso="MacroPlay" size="normal" onAction="ImportImage" />
          <button id="Button1-2" label="画像一括置換" imageMso="MacroPlay" size="normal" onAction="ReplaceImage" />
          <button id="Button1-3" label="複数pptを一つにまとめる" imageMso="MacroPlay" size="normal" onAction="Pre_InsertFromFile1" />
        </group>
        <group id="Group2" label="tool_02">
          <button id="Button2-1" label="図形をA4にリサイズ" imageMso="MacroPlay" size="normal" onAction="ResizeA4" />
          <button id="Button2-2" label="図形をロック" imageMso="MacroPlay" size="normal" onAction="lockShapes" />
          <button id="Button2-3" label="図形のロック解除" imageMso="MacroPlay" size="normal" onAction="unlockShapes" />
          <button id="Button2-4" label="グリッド表示ON・OFF" imageMso="MacroPlay" size="normal" onAction="ToggleGrid" />
          <button id="Button2-5" label="グリッド吸着ON・OFF" imageMso="MacroPlay" size="normal" onAction="SnapGrid" />
        </group>
      </tab>
    </tabs>
  </ribbon>
</customUI>

できたら、customUIというフォルダを作成してその中にcustomUI.xmlを入れて、そのフォルダごと解凍したパワポデータの直下に入れます。

f:id:min0124:20170128161018j:plain

タブメニューの登録(.rels)

解凍したパワポデータに_relsというフォルダの中に.relsというデータがあるので、まずコピーをとってからメモ帳で開きます。(そのまま開くと読み取り専用になります)

最後の行の前に <Relationship Id="myCustomUI" Type="http://schemas.microsoft.com/office/2006/relationships/ui/extensibility" Target="customUI/customUI.xml"/>

を挿入します。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="ppt/presentation.xml"/>
<Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail" Target="docProps/thumbnail.jpeg"/>
<Relationship Id="rId3" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/>
<Relationship Id="rId4" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/>
<Relationship Id="myCustomUI" Type="http://schemas.microsoft.com/office/2006/relationships/ui/extensibility" Target="customUI/customUI.xml"/>
</Relationships>

最後に保存して、オリジナルの.relsへ上書き保存します。UFT-8で保存しないと、最後にエラーを吐くので注意!

もとの状態に戻す

圧縮して元の名前に戻します。○○○.pptm

開いて、タブメニューを確認して完了です。

好きなマクロが簡単に使えるパワポファイルとして使えます。

f:id:min0124:20170128161747j:plain

参考

Office 2007/2010・リボンのカスタマイズ 初心者備忘録

Office 2013 アイコン一覧(M) | 初心者備忘録