web-dev-qa-db-ja.com

[すべて更新]または個別に[データ]> [更新]を右クリックすると、Excelグラフの書式が失われる

接続から更新されるデータに依存する4つのピボットグラフがあります。

[すべて更新]をクリックすると、設定したすべての書式設定(色/枠線/線と棒と2番目の軸の選択)が失われます

  • チェックを外しましたProperties Follow Chart Data Point for Current Workbook
  • データを右クリック>データテーブルごとに更新も試しましたが、同じ問題が発生します。
  • Preserve cell formatting on updateはすべてのグラフでチェックされています。
  • Invert if negative optionチェック/チェックなしは違いを生じません
  • Preserve cell formatting on updateチェックを外してみたところ、OKになりました。次に、オプションを右クリックしてチェックマークを付け直しても、まだ機能しません。
  • グラフのフォーマットをテンプレートとして保存しましたが、更新後に再適用しましたが、フォーマットはまだ失われています。

バージョン:

Excel 2016 MSO (16.0.4738.1000) 32-bit

enter image description here

2
Matt

@マット-あなたと同じように、上記の解決策のいずれも私にとってうまくいきませんでした。さらにイライラしたのは、同じファイルに2つのピボットチャート/テーブルがあり、どちらも同じPower Pivotデータモデルにリンクされていることです。一方はカスタムの書式を維持し、もう一方は維持しません。したがって、それが自分のバージョンのExcelまたは特定のバグに関連している可能性が非常に低いことがわかった。

Harrymcによってリンクされた記事には、これを解決するための重要な手がかりが含まれていますが、回避策は使用していません。これがXMLです。私は2つのピボットチャートのXMLを比較する段階でしたが、ここでフォーマット階層が機能しているのではないかと考えました。

私の解決策:

  1. 依存するピボットグラフを削除します(ゼロから始めます)
  2. すべてのスライサーを削除し、ピボットテーブルからすべてのフィルターを削除します。
  3. 「更新時にセルの書式を保持する」がチェックされていることを確認してください(これは問題を直接解決するわけではありませんが、重要なようです)
  4. 新しいピボットグラフを追加します。ただし、この段階でグラフがどの程度悪く見えるかに関係なく、データをフィルタリングしたりスライスしたりしないでください。
  5. カスタム書式を適用します。
  6. ファイルを保存します(別のフォーラムのユーザーがExcelの終了と再起動を提案しました-私は必死でやりました!)
  7. 次に、フィルター/スライサーを追加して、目的のチャートを作成します。

その後、データを更新/スライス/フィルターすることができ、カスタムグラフ形式はすべて保持されました。

1
JB One

Format Painterを使用して別のテーブルからペイントしないでください。 1つのヘッダーを新しいピボットテーブルでどのように設定するかを設定し、他のヘッダー全体にPaintの書式を設定します。

tldr:(何らかの理由で)format Painterは、パワーピボットモデルにリンクされたピボットテーブルでは機能しません。

1
chris

私にとってうまくいったのは、特定のフィールドの「値フィールド設定」、そのポップアップの「数値フォーマット」をクリックして、そこでフォーマットを設定することでした。それを更新した後、それはフォーマットを保持しました。

1
Muzaffer

同じ問題がありました。ピボットテーブルの値を変更し、ヘッダーの "Sticky"形式を失いました。再作成するか、ゼロから始めようとする以外は、上記のすべてを試しましたが、成功しませんでした。上記の典型的な設定はすべて設定済みですが、何も「スティック」にはなりません。

最終的に私のために働いたもの:

書式設定する各セルを右クリックし、セルの網掛けとフォントの書式設定に使用できるポップアップオプションを使用しました。リボンからさらに技術的なオプションをいくつか使用する必要がありましたが、最初にセルの網かけをポップアップオプションから変更することにより、セルに最初の変更を続けました。 [更新]をクリックする前に確実に保存しましたが、最終的にはこの方法を使用してスタックしました。

ピボットテーブルを更新するときに書式を維持するには、次の手順を実行します。

  1. ピボットテーブルの任意のセルを選択し、右クリックします。

  2. 次に、コンテキストメニューからPivotTable Optionsを選択します。

  3. ピボットテーブルオプションダイアログボックスで、レイアウトと書式タブをクリックします。
  4. 次にフォーマットセクションの下の更新時にセルのフォーマットを保持する項目を確認します。
  5. 最後に[〜#〜] ok [〜#〜]で終了します。

これで、ピボットテーブルをフォーマットして更新するたびに、フォーマットが消えることはなくなりました。

編集1:

これらを試すことができます:

ネガティブオプションの場合は反転は、ピボットチャートオプションでチェックする必要があります。

または、このVBAコードをイミディエイトウィンドウに書き込むことができます。

Worksheets("Sheet1").ChartObjects("Chart 1").Chart.SeriesCollection(1).InvertIfNegative = True

注:シート、チャート、シリーズ番号は編集可能です。

編集2

別の可能性は、、

  1. プロットエリアを選択し、右クリックしてコマンドテンプレートとして保存]を選択します。

グラフ形式を失うたびに、Excelにアクセスし、ファイルを選択します。グラフを選択します。

  1. 右クリックしてグラフタイプの変更を選択します。

  2. グラフの種類のポップアップメニューからテンプレートを選択します。

以前に適用された選択したチャートで失われたすべてのフォーマットを見つけます。

N.B.

上記のプロセスは、チャートまたはすべてのチャートでVBA(マクロ)を使用して実装できます。

1
Rajesh S

「更新時にフォーマットを保持」が選択されている場合でも、ピボットテーブルがフォーマットを変更する問題の解決策を見つけました。

すべての小計を削除してから、書式設定するセルを選択し、書式設定して、小計を元に戻しました。Voilàçamarche。それが継続するかどうかを確認します。

1
user1031587

記事 フィルターされたときのピボットグラフの書式変更 は主題を詳細に扱います。

Excelが実際に他のすべてのグラフプロパティと共にキャッシュにフォーマットデータを格納することを説明します。これは、正確なフォーマットを記憶していることを意味します。データが更新されると、Excelはこのキャッシュを無効にするため、グラフのデフォルトのフォーマットが適用されます。

(= C9)のような直接セル参照またはピボットテーブルを指すGETPIVOTDATA()関数を使用して、ピボットテーブルを参照する数式を含むピボットテーブルのレプリカを含むワークシート上の新しい領域が作成されるソリューションを提供します。 GETPIVOTDATA関数は、ピボットテーブルデータのサブセットをグラフに表示する場合に適しています。

これは2つのステップで行われます。

ステップ1

最初の手順は、ピボットを参照する数式を作成して、ピボットテーブルデータを再作成することです。これは、ピボットテーブルに隣接するセルまたは別のワークシートで行うことができます。フィルターを適用または削除したときにピボットテーブルが拡大する場合に備えて、ピボットテーブルと数式ベースのテーブルの間に十分な空白行/列を残すことを忘れないでください。

enter image description here

ステップ2

ステップ2は、新しい数式駆動型テーブルをグラフのソースとして使用して、通常のグラフを作成することです。ピボットテーブルがフィルター処理またはスライスされると、数式が自動的に更新され、ピボットテーブルからの新しい数値が表示されます。グラフも更新され、新しいデータが表示されます。

enter image description here

結論

記事の最後は次のとおりです。

スライサーをピボットグラフとピボットテーブルに追加することは、プレゼンテーションをインタラクティブにする優れた方法です。ピボットグラフを使用すると、グラフをデータソースにリンクして、メンテナンスをほとんど行うことなく動的に更新できます。ただし、ピボットグラフは、カスタムの書式設定でグラフをフィルタリングするときに、奇妙な動作をいくつか表示します。この動作を理解し、設計時に計画することで、時間とフラストレーションを節約できます。

サンプルプレゼンテーションは、以下からダウンロードできます。
フィルターSlicer.xlsxでのピボットグラフの書式変更

著者は、記事 ピボットテーブルとVBAを使用した動的グラフ を推奨し、VBAを使用してより高度な方法で動的グラフを作成します(ここに含めるには長すぎます)。

1
harrymc

この繰り返し発生するエラーの最善の解決策は、ピボットテーブル全体を選択する->リボンバーの[分析]オプションに移動する-> [アクション]セクション-> [選択]をクリックする->ピボット全体をクリックする。シート、完了したらリフレッシュを使用します。これは私にとってはまったく問題ありませんでした。

それが役に立てば幸い。

1
sheetal sarkar

ピボットテーブルでも同様の問題が発生しました。スライサーを使用してデータをフィルター処理すると、フォーマットが消去されましたが、一部のセクションのみでした。

  1. [更新時にセルの書式を保持する]チェックボックスをオンのままにします。
  2. [分析]リボンタブで、[フィルター接続]を開きます。
  3. すべてのフィルターのチェックを外します
  4. 書式を適用する
  5. 「接続のフィルター」を再度開きます
  6. 各スプライサーを適用し、一度に1つずつ保存します。これは奇妙に聞こえますが、一度にすべてを適用しようとするとフォーマットが失われました。
0
Wes