4

いくつかの機能を備えたExcelワークブックがあります。

  • 1つの主要なユーザー向けシート
  • ユーザー向けシートのデータに基づく1つの要約シート
  • ユーザー向けシートのデータに基づくグラフの数(たとえば、ワークシート内のオブジェクトではなく、個別のタブが付いたグラフの種類-特別な名前または特別なプロパティがあるかどうかはわかりません)
  • ユーザー向けシートの値を計算する一連の「背景」ワークシート
  • ユーザーが任意の列でユーザーシートを並べ替えることができるマクロ。これは、ユーザー向けシートのWorksheet_SelectionChangeイベントで参照されます。

ただし、配布のために、簡単にするためにシートをカリングしたいと思います(そして、ファイルサイズ-データクエリ全体がシートの1つに含まれています)。ユーザー向けのシートの値を計算する必要がありますが、データセットごとに1回だけ実行されるため、値のフォーマットとして非常にうまくコピーできます。

ただし、問題は、依存するシート、グラフ、およびマクロを新しいワークブックに転送して、古いワークブックを参照する代わりに、シートの新しいバージョンを参照するようにすることです。理想的にはVBAか何かでこれをやりたいのですが、これまでの私のGoogle検索はあまり関連性がないようです。

誰かがこれを行う方法を知っていますか?

4

1 に答える 1

3

あなたの質問を完全に理解できるかどうかはわかりませんが、あなたがやりたいと思うのは、ワークシートを減らした新しいバージョンのワークブックを作成することです。

VBAでこれを行うには、次のコードスニペットから始めるとよいでしょう。

Sub Macro1()
    ActiveWorkbook.SaveAs Filename:= _
        [your path here]\Book2.xls", FileFormat:=xlNormal, _

    Sheets("Sheet2").Select
    ActiveWindow.SelectedSheets.Delete
End Sub

ブック全体のコピーを作成してから、不要なものを削除すると、リンクが古いブックを参照していないことを確認できます。

リンクをそのままにして新しいワークブックを作成すると、不要なもの(計算など)をすべて簡単に削除できます。

于 2009-07-21T14:41:10.073 に答える