Excelの基本的な機能の1つは、あるセルを別のセルと等しくできるようにすることです。たとえば、セル内で最も単純な数式を使用できます。

=C7

これにより、セルC7から現在のセルに内容がコピーされ、セルC7の内容が変更されるたびに更新されます。セル値のコピーだけでなく、あるセルから別のセルに書式をコピーしたい場合はどうでしょうか。

残念ながら、Excelでこれを行う本質的な方法はありません。ただし、試すことができる2つの回避策があります。まず、セルC7が変更されるたびに検出するマクロを作成できます。変更された場合、マクロはセルの内容(書式設定を含む)をターゲットセルにコピーします。たとえば、次のマクロは、ワークシートに変更があるたびに実行されます。変更がセルC7にある場合、C7の内容はSheet1のセルE3にコピーされます。

Private Sub Worksheet_Change(ByVal Target As Excel.Range)

If Not Intersect(Target, Range("C7")) Is Nothing Then         Range("C7").Copy (Worksheets("Sheet1").Range("E3"))

End If End Sub

このアプローチにはいくつかの欠点があります。まず、特にこの方法でコピーしたいセルがかなりある場合は、時間がかかる可能性があります。さらに、マクロはセルC7の内容が実際に変更された場合にのみ実行され、C7のフォーマットのみが変更された場合には実行されません。 (フォーマットが変更されるたびに自動イベントをトリガーする方法はありません。)

マクロアプローチの代わりに、Excelのカメラツールを使用することもできます。

これは_ExcelTips_の他の問題でカバーされていますが、本質的にカメラは、ある場所から別の場所にある範囲のセルの動的画像をコピーする方法です。表示されるのはソースセルの画像であり、ターゲットセルの内容としてではなく、グラフィックとして表示されます。グラフィックは動的であるため、ソースセルが変更されるたびに(フォーマットを含む)、変更を反映するように画像も更新されます。

カメラツールを使用するには、ツールが使用できるようにツールバーをカスタマイズする必要があります。デフォルトでは使用できません。カスタマイズを行う場合、カメラツールは[ツール]セクションの[コマンド]タブで使用できます。これはコマンドリストの一番下にあり、奇妙なことに小さなカメラのように見えます。

カメラツールを配置したら、次の手順に従って使用します。

。写真を撮りたいセルまたは範囲を選択します。

。カメラツールをクリックします。マウスポインタが大きなプラス記号に変わります。

。別のワークシートに変更します。

。画像の左上隅を表示する場所をクリックします。画像はワークシートにグラフィックとして挿入されます。

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(2769)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。