6

PowerPoint 2010 または Word 2010 で [挿入] -> [グラフ] を選択すると、データの Excel ワークシートを含む新しいグラフが作成されます。

Excel ワークシートにマクロを追加すると、ワークシートを閉じて再度開くと破棄されるようです。

ただし、Office 2003 で作成した Word 文書と PowerPoint プレゼンテーションもいくつか持っているため、マクロを含むグラフを作成することは可能です。これには、マクロを含む Excel グラフが埋め込まれています。これらを Office 2010 に変換すると、「通常の」Office 2010 グラフと同じように見えますが、マクロは保持されています。

[挿入] -> [グラフ] を選択したときに作成される埋め込みグラフは、"pptm" 形式ではなく "pptx" 形式であるため、マクロは保存されません。

(ActiveWorkbook.FileFormat を照会すると、「51」が返されます。これは「Open Xml Spreadsheet」です。これは、「Open Xml Spreadsheet with Macros」(「52」) とは対照的に、実際には「pptx」です)。

「pptm」動作でグラフを挿入するにはどうすればよいですか? または、既存のグラフの動作を変更しますか?


注: グラフの「オブジェクト」を挿入したくありません。これは、ホスト アプリケーション内でグラフを編集できないことを意味するためです (編集するために「開く」必要がある Excel グラフを挿入するだけです)。


有利なスタートを切りましょう...次の方法で目的を達成できます。

  1. Word (または PowerPoint) で新しいドキュメントを作成します。
  2. ドキュメントを 97-2003 ドキュメントとして保存します (強制的に互換モードにします)。
  3. [挿入] → [オブジェクト] → [Microsoft Excel Chart] を使用してグラフを挿入します。これは古いスタイルの Excel チャートを埋め込みます。
  4. 埋め込みグラフを右クリック -> [開く] で開き、マクロを追加します。
  5. チャートを閉じ、[ファイル] -> [情報] を選択し、互換モードの [変換] ボタンを使用して、ドキュメントを Office 2010 ドキュメントに変換します。

これで、Word または PowerPoint で直接編集できる "ネイティブ" Word または PowerPoint 2010 グラフが作成されました。チャートをクリックして [チャート ツール] -> [デザイン] -> [データの編集] を選択すると、開いた Excel ワークシートに手順 4 で作成したマクロが含まれています。成功です。

さて、もっと簡単な方法はありますか?

4

3 に答える 3

2

私の意見では、次の方法で必要なものを達成できます。

(残念ながら、英語版ではなくローカル版の Office を使用しているため、写真と正確な英語のコマンドを提示することはできません)

  • [挿入] >> [オブジェクト] >> [オブジェクト...] を選択します。
  • オブジェクトウィンドウで最初のページを取得します(Create newなど)
  • Microsoft Excel Chart (または同様のもの) を検索し、 [OK] をクリックします。
  • 下の図に示すように、2 つのシートを含むワークブックが得られます。

ここに画像の説明を入力

(リボンで利用できるチャート編集機能があります)

  • 上の図に示されているように、Chart エディションでAlt+F11 を押します。Excel 用の IDE が開き、適切なワークブックが見つかります。
  • そこに新しいモジュールとマクロを追加します
  • これで、Word のチャート エディションを終了し、ドキュメントを次の名前で保存できます。*.docm
  • 再度開いた後、Chart Edition (ダブルクリック) >> Alt+F11 >>に移動すると、マクロがワークブック内に拡張子付きで保存されていることがわかります。*docm
于 2013-06-03T22:25:54.037 に答える
1

報奨金が通過したので (より良い回答はありません)、質問を閉じることができるように、質問から部分的な回答を追加します。


  1. Word (または PowerPoint) で新しいドキュメントを作成します。
  2. ドキュメントを 97-2003 ドキュメントとして保存します (強制的に互換モードにします)。
  3. [挿入] → [オブジェクト] → [Microsoft Excel Chart] を使用してグラフを挿入します。これは古いスタイルの Excel チャートを埋め込みます。
  4. 埋め込みグラフを右クリック -> [開く] で開き、マクロを追加します。
  5. チャートを閉じ、[ファイル] -> [情報] を選択し、互換モードの [変換] ボタンを使用して、ドキュメントを Office 2010 ドキュメントに変換します。

これで、Word または PowerPoint で直接編集できる "ネイティブ" Word または PowerPoint 2010 グラフが作成されました。チャートをクリックして [チャート ツール] -> [デザイン] -> [データの編集] を選択すると、開いた Excel ワークシートに手順 4 で作成したマクロが含まれています。成功です。

私はまだこれをもっと直接的にできることに興味があります...

于 2013-06-10T13:21:12.597 に答える
0

問題は、チャート データがアプリケーション内で保持される方法にあります。変換と発信は、2 つの異なるプロセスです。データ シリーズは、基本的に Excel シートではなく配列です。Excel を使用してデータを表示し、編集するだけです。Excel シートを埋め込みたくない場合は、powerpoint/word のモジュールにコードを保持し、shapes オブジェクトを介してチャートにアクセスする必要があります。

Sub GetChartName()
Dim sSlide As Slide
Dim cChart As Chart
Dim sShape As Shape

Set sSlide = PowerPoint.ActivePresentation.Slides(1)
    For Each sShape In sSlide.Shapes
        If sShape.HasChart Then
            Set cChart = sShape.Chart
                MsgBox cChart.Name
            Set cChart = Nothing
        End If
    Next
Set sSlide = Nothing

End Sub
于 2013-06-04T22:16:39.443 に答える