2011-08-08 9 views
4

Word 2007では、「挿入」リボンタブには、単一のドロップダウンボタン(「表」というラベルが付いています)を持つ「表」グループがあります。Word 2007で[表の挿入]コマンドの動作を変更できますか?

ドロップダウンには、[表の挿入...]、[表の描画]などのさまざまなメニュー項目が含まれます。ただし、ドロップダウンの上部には10x8グリッドがあり、マウスを使用して新しいテーブルのサイズ。 (最初の質問:このことは何とか呼ばれていますか?!!)。

上記のウィジェットを使用してユーザーがテーブルを「描画」するときに、テーブル内で使用される段落スタイルを変更することができます(そしておそらく他のクリーンアップを行うこともできます) 。

「テーブルの挿入...」コマンドをオーバーライドする方法はわかっていますが、「ウィジェット」の動作を上書きする方法はわかりません。それはできますか?

+0

私が知っていることから、あなたはできません。新しく挿入されたテーブルがあなたのスタイルを取得できるように、テーブル標準スタイルを変更することもできます。 –

+0

@ 0xA3:テーブルノーマルをいくつか変更しましたが、テーブルスタイルで段落スタイルを設定できないという問題があります。書式のアスペクトを変更することはできますが、スタイルではうまくいきません。 (http://www.shaunakelly.com/word/styles/custom-table-styles-2002-2003.htmlを参照)。 –

答えて

3

私はこの問題を解決しなかったと言いたいと思います。しかし、この問題を解決しようとする私の試みでは、私はかなりのものを発見しました。私は、他の誰かが解決策を見つけるのを助けるためにここに記録しています。

テーブルを挿入するために使用できる10x8グリッドを制御するために、 "TableInsertGeneral"という名前のWordコマンド内にリストされたマクロが検出されました。

TableInsertGeneral listed in Word Macros dialog box

このマクロこの機能は以前のバージョンのWord(Insert Table Drop Down Missing)で機能しなくなった場合、スザンヌS. Barnhillによれば、グリッドを復元します。 Word 2007/2010に存在するマクロは、マクロダイアログボックスの[実行]ボタンから実行できません。コマンドをダブルクリックすると、ダイアログボックスは閉じられますが、何も実行しません。私はさらに、TableInsertGeneralという名前のVBAサブを作成することで、その関数をインターセプトしようとしましたが、グリッドにアクセスしたときにこのサブに配置されたコードは実行されなかったようです。しかし、私の研究に基づいて、私はTableInsertGeneralマクロが10x8グリッドを表示するためにいくつかの接続を持っていると信じています。

また、Wordリボンのテーブルギャラリーを変更することでこの問題を回避しようとしました。グリッドを制御しているコードには直接アクセスできなかったので、テーブルギャラリーを非表示にしてグリッド機能を除外した再構築されたギャラリーに置き換えました(段落スタイルやその他の変更がグローバルに機能するようにしました)。

まず、私はいくつかのツールをダウンロード:(リボンを編集する:Office Custom UI Editor)は、Microsoft Officeの

  • カスタムUIエディタ(様々なリボンパーツの名前を識別するための:Office 2007 Control IDs in Excel worksheet
  • Office 2007のコントロールID
  • (再建リボンに配置するのWord内の内部のアイコンにアクセスするための:Word 2007 Icons Gallery)Office 2007のアイコンギャラリー

Microsoft Office用のカスタムUIエディタの使用(カスタムUIを編集することができます。フォルダ構造を作成したり、XMLファイル間の関係を維持するために必要とせずWord 2007文書またはテンプレート内のxmlファイル)私はテンプレートを開き、ファイル内でこのコードを保存:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui"> 
<ribbon> 
    <tabs> 
    <tab idMso="TabInsert"> 
     <group idMso="GroupInsertTables" visible="false" /> 
     <group id="CustomGroupInsertTables" label="Tables" insertBeforeMso="GroupInsertIllustrations"> 
     <gallery id="CustomTableInsertGallery" 
     label="Table" 
     imageMso="TableInsertGallery" 
     size="large" 
     columns="1" 
     rows="4" 
     screentip="Table" 
     supertip="Insert or draw a table into the document." 
     keytip="T" 
     onAction="RibbonControl.galleryOnAction" > 
     <item id="GridMessage" label="Draw Table Via Grid Has Been Removed" imageMso="TablesGallery" 
     supertip="Provides information on why this template has different Ribbon controls."/> 
     <button idMso="TableInsertDialogWord" /> 
     <button idMso="ConvertTextToTable" /> 
     <button idMso="TableExcelSpreadsheetInsert" /> 
     </gallery> 
    </group> 
    </tab> 
    </tabs> 
</ribbon> 
</customUI> 

これが成功し、元のテーブルギャラリーを隠して交換それは元のテーブルギャラリーの機能のいくつかとそれ。 10x8グリッドは消えましたが、Draw TableトグルボタンとQuick Tablesギャラリーを復元できませんでした。私が知る限り、XMLスキーマでは、Word 2007のすぐに使用できるバージョンに存在するこれらのいずれかを既存のギャラリーに埋め込むことはできません。

Rebuilt Tables Gallery

:私は(でも、私が使用することとは思わなかったこの部分的な解決のために)の機能を削除し好きではないので、私は再建ギャラリーの最初の項目として、メッセージボックスに縛らボタンを追加しました

新を接続するためのコードボタンがRibbonControlという名前のモジュール内に配置した「テーブルを介して、グリッドが削除された描画」:しかし、私は誰もがこの部分的な解決策を使用することを期待していない

Sub GalleryOnAction(Control As IRibbonControl, selectedID As String, selectedIndex As Integer) 

If Documents.Count = 0 Then 
MsgBox "This control is disabled when there is no active document." 
Exit Sub 
End If 

Select Case Control.id 
    Case "CustomTableInsertGallery" 
    Select Case selectedIndex 
     Case 0 
     MsgBox "Explain changes to Ribbon interface here." 
     Case Else 
     'Do Nothing 
    End Select 
End Select 
End Sub 

あれば復元するための手段2つの欠けているコントロールを達成することができました。これは良い回避策かもしれません。ちなみに、私はグレッグマクシーのWebサイトからこの最も適応:

あなたがここまで読めば

Customizing the Ribbon、ありがとう!私はあなた自身の試みでより多くの成功をお祈りします。

+0

私はこの要約が「いいえ」であるという根拠に基づいて、この優れた完全な答えを受け入れるつもりです:-) –

関連する問題