1

Excel で 2 つのワークシート テンプレートを作成しました。最初のシートはきれいなグラフ用で、もう 1 つのシートはそれらのグラフを駆動するデータ用です。2 番目のワークシートにすべてのデータをダンプできる vb.net 2005 アプリを作成しました。グラフ ワークシートは完全に更新されます。

このレポートを同じワークブックで何度か実行したいと考えています。(したがって、タブには「Person1 - Chart」、「Person1 - Data」、「Person2 - Chart」、「Person2 - Data」などと表示されます。)

私の解決策は、このレポートが実行されるすべての人に対して、グラフ テンプレートをコピーしてから、データ テンプレートをコピーすることでした。問題は、作成されたすべてのグラフ テンプレートが元のデータ ワークシートを指していることです。各グラフ ワークシートが指しているワークシートを設定するにはどうすればよいですか?

親ではなくワークシート自体との関係を維持しながら、ワークシートをペアでコピーする方法はありますか?

4

3 に答える 3

2

はい、コピー機能を使用する前に両方のシートを選択してください。手動で行う場合は、後で選択を解除することを忘れないでください。そうしないと、両方にデータを入力することになります。

VBA の場合:

Sheets(Array("Chart template", "Data template")).Select
ActiveWindow.SelectedSheets.Copy After:=Sheets("Data template")

相互運用:

App.ActiveWorkbook.Sheets(New String()
        {"Chart template", "Data template"}).Select()
App.ActiveWindow.SelectedSheets.Copy(After:=
        App.ActiveWorkbook.Sheets("Data template"))
于 2009-04-22T19:04:46.937 に答える
0

これを機能させるためにプログラムされたアプリを使用したことはありませんが、データを同じシートに移動し、改ページ プレビューを使用してシートを設定し、データ シートの印刷を回避する場合は、シートをコピーして貼り付けることができます。以上で、チャートの参照は有効なままになります。

使用しているデータの量によっては、これは理想的な解決策ではないかもしれませんが、私がこの問題をどのように管理したかです.

于 2009-04-22T18:58:33.553 に答える
0

コピーした後、チャート内の参照を修正できます。

SetSourceData メソッドを使用する

ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("A3:D7")
于 2009-04-22T19:04:27.720 に答える