Excel で異なるシート間の値を掛け合わせるには?
Excel で値を掛け合わせるのはごく一般的な作業ですが、単一のワークシート内なら簡単でも、複数のシートにまたがる場合は少し難しくなります。これまでに、Excel で異なるシートのデータを掛け合わせる必要があったことはありますか?
たとえば、Sheet1 に従業員の日給が、Sheet2 に勤務時間が記録されているとします。このような場合、時給と勤務時間の両方をもとに、各従業員の総給与を計算する必要が出てくるかもしれません。本チュートリアルでは、基本的な数式を使って複数のシート間で値を掛け合わせる方法をご紹介します。これにより、作業がぐっとラクになります。シート間でデータを連携させれば、手作業の負担を軽減できるだけでなく、大規模なデータセットや頻繁に更新される動的データを扱う際にも、正確性と効率性をしっかり維持できます。

異なるワークシートの値を掛け合わせるには PRODUCT 関数を使用する
異なるワークシートの対応するセルを掛け合わせるには VBA を使用する
異なるワークシートの値を掛け合わせるには乗算記号を使用する
異なるシートにある値を掛け合わせるには、通常の乗算記号(*)を使った数式が最も手早く行える方法です。以下の手順に従えば、簡単に計算できます。
1。結果を表示したいセルを選択して、次の数式を入力してください。
=Sheet2!B2*Sheet1!B2 
2。「Enter」キーを押して数式を確定します。他の行にも同じ計算を適用するには、フィルハンドルを下にドラッグ!Excel が対応する行の計算を自動で更新します(下記参照)。

=Sheet1!B2*Sheet2!B2*Sheet3!B2*Sheet4!B2…実用的なアドバイス:数式を確定する前に、シート名とセル参照を再確認し、空白セルの参照や行の不一致といった一般的なエラーを回避してください。
エラーの注意点:参照セルに文字列が含まれていたり空であったりすると、数式はエラーまたはゼロを返します。
異なるワークシートの値を掛け合わせるには PRODUCT 関数を使用する
乗算記号の代わりに、PRODUCT 関数を使って複数のシートから値を掛け合わせることもできます。長い掛け算の連鎖を扱う際に、数式の構文が簡潔になるため、非常に便利です!
1。掛け算の結果を表示したいセルを選択し、次の数式を入力してください。
=PRODUCT(Sheet1!B2, Sheet2!B2) 
2。「Enter」キーを押して最初の結果を表示させましょう。他の行にも同じ計算を適用するには、フィルハンドルを使って数式を下方向にコピーしてください。これにより、各行の結果が対応するデータを正確に反映します(下記スクリーンショット参照)。

=PRODUCT(Sheet1!B2,Sheet2!B2,Sheet3!B2,Sheet4!B2...) メリット:PRODUCT 関数は複数の値への拡張が容易で、3 つ以上の要素を含むデータセットに最適です。
注意点:各参照セルに数値が含まれていることを確認してください。そうでないと、数式がエラーを返す可能性があります。
異なるワークシートの対応するセルを掛け合わせるには VBA を使用する
大規模なデータセットで複数のシート間の値を掛け合わせる必要がある場合や、データ範囲が頻繁に変更される場合には、VBA マクロを活用することで作業を自動化し、大幅に効率化できます。特にデータが多数の行と列にわたるケースや、手動で数式を適用するのが時間のかかるような状況では、VBA が非常に効果的です。
メリット:VBA を使えば、数百行から数千行のデータをわずか数秒で処理可能!繰り返し作業や大規模な計算に最適です。ただし、マクロを有効にしたワークブックが必要で、VBA の基本知識があるとさらに効果的に活用できます。
注意:マクロを実行する前に、ワークシート名とリストの配置エリアを確認し、既存のデータが上書きされないようにしてください。必要に応じて、ワークブックのバックアップを取るか、コピーに対してコードを実行することをおすすめします。
このタスクのための VBA マクロの設定と使用方法:
1。Excel で開発者タブを表示します(まだ表示されていない場合は、「ファイル」>「オプション」>「リボンのユーザー設定」から「開発」にチェックを入れて有効化してください)。次に、Visual Basicをクリックして VBA エディターを開き、挿入>標準モジュールを選択して、以下のコードをモジュールに貼り付けます。
Sub CrossSheetMultiply()
Dim ws1 As Worksheet, ws2 As Worksheet, wsResult As Worksheet
Dim rng1 As Range, rng2 As Range
Dim i As Long, j As Long
Dim lastRow As Long, lastCol As Long
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set ws1 = Worksheets(Application.InputBox("First sheet name", xTitleId, "Sheet1", Type:=2))
Set ws2 = Worksheets(Application.InputBox("Second sheet name", xTitleId, "Sheet2", Type:=2))
Set wsResult = Worksheets.Add
wsResult.Name = "Multiply_Result"
lastRow = Application.InputBox("Number of rows to process", xTitleId, "10", Type:=1)
lastCol = Application.InputBox("Number of columns to process", xTitleId, "5", Type:=1)
For i = 1 To lastRow
For j = 1 To lastCol
wsResult.Cells(i, j).Value = ws1.Cells(i, j).Value * ws2.Cells(i, j).Value
Next j
Next i
MsgBox "Multiplication complete! Results placed in 'Multiply_Result'.", vbInformation
End Sub 2。
ボタンをクリックしてマクロを実行してください。すると、シート名とデータサイズの入力を求められますので、指示に従って入力してください。完了後、「Multiply_Result」という新しいシートが作成され、指定した2 つのシートの対応するセルの掛け算結果が表示されます。
実用的なヒント:この VBA マクロは、指定した行数と列数に基づいて、2 つのワークシートの値をセル単位で掛け合わせます。エラーや空白の出力を防ぐため、マクロを実行する前に、両方の元シートに同じ範囲サイズの数値データが含まれていることを必ず確認してください。
トラブルシューティング:マクロがシートを認識できない場合は、シート名のスペルと存在を再度ご確認ください。#VALUE! エラーや不正確な結果が表示される場合は、数値以外のデータが含まれていないかをご確認ください。VBA コードを実行する前には、必ず作業内容を保存してください。一度実行された変更は元に戻せないためです。
まとめと推奨事項:複数のシート間で値を掛け合わせる際は、小規模なデータにはシンプルな数式を、大規模なタスクや繰り返しの操作、頻繁にデータ構造が変わる場合には VBA を使用するのが最適です。ご自身のスキルとワークフローのニーズに合った方法をぜひ選んでください。
関連記事の詳細:
- Excel で2 つの列を掛け合わせて合計する
- Excel では、多くのユーザーが2 つの列を掛け合わせて合計する作業に手間取ることがあります。確かに、各セルの値を一つひとつ掛け合わせてから合計することもできますが、対象となる行数が数百行、数千行にもなると、この方法は非常に面倒です。そんなときに役立つのが、Excel の強力な関数「SUMPRODUCT」です。これを使えば、2 つの列を瞬時に掛け合わせて合計できます。
- Excel で勤務時間(時・分)に時給を掛けて計算する
- A 列に勤務時間(時・分)が記録されたセルのリストがあり、B 列に時給が記載されているとします。このような場合、下記のスクリーンショットのように、勤務時間と時給に基づいて支払い金額を計算したいことがあります。本記事では、Excel で勤務時間と時給から支払い金額を計算する方法をご紹介します。
- Excel で1 つの数式で2 つの数値を足してから掛ける
- Excel で1 つの数式内で2 つの数値を合計し、その後指定したパーセンテージを掛ける操作を試したことはありますか? 方法が分からないという方は、ぜひ本記事で紹介する手法をご活用ください。
- Excel テーブルで VLOOKUP を実行してから掛ける
- ここには、Excel シート内に2 つのテーブルがあります。1 つは各製品の売上高と利益率の関係を定義したルール表、もう1 つは製品の実際の売上データを含んでいます。ルール表では、売上が多いほど利益率が高くなる仕組みとなっています。このような状況で、下記のスクリーンショットのように、各製品の利益率と利益をテーブル内で直接計算したいとします。
最高の Office 業務効率化ツール
| 🤖 | KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行 | コード生成| カスタム数式作成 | データ分析とチャート生成| 拡張機能呼び出し… |
| 人気の機能:検索・ハイライト、または重複をマーキング | 空白行を削除する | データを失うことなく列の結合またはセルを | 数式を使用しない四捨五入... | |
| スーパー LOOKUP:複数条件 VLookup | 複数値 VLookup | 複数シート間 VLookup | ファジーマッチ.... | |
| 高度なドロップダウンリスト:ドロップダウンリストをすばやく作成 | 連動型ドロップダウンリスト | 複数選択可能なドロップダウンリスト.... | |
| 列マネージャー:指定した数の列を追加|列の移動|非表示列の表示状態を切り替え|範囲および列の比較... | |
| 注目の機能:グリッドフォーカス | デザインビュー |強化された数式バー | ワークブックとシートマネージャー | リソースライブラリ(オートテキスト)| 日付ピッカー | ワークシートの統合 | 暗号化/セルの復号化 | リストからメール送信 | スーパーフィルター | 特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。 | |
| トップ15 ツールセット:12 テキストツール(テキストの追加、特定の文字を削除、...)| 50+チャートタイプ(ガントチャート、...)| 40+実用的関数(誕生日に基づいて年齢を計算します、...)| 19 挿入ツール(QR コードを挿入、パスから画像を挿入、...)| 12 変換ツール(単語に変換する、為替レートの変換、...)| 7 結合と分割ツール(高度な行のマージ、セルの分割、...)|さらに多数 |
Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、時間を大幅に節約できる高度な機能を300 以上提供します。最も必要な機能を今すぐ入手するにはこちらをクリック。。。
Office Tab は Office にタブインターフェースをもたらし、作業を大幅に簡単にします
- Word、Excel、PowerPoint でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
- 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
- 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!
すべてのKutools アドインが、たった1 つのインストーラーで完結。
Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。
- オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
- インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
- 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
- 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
- 最高のお得感— 個別アドイン購入よりお得