フッターコンテンツにスキップ
EXCEL ツール

Excelで減算を行う方法: すべての方法を説明 (2026)

Iron Softwareのチームによって執筆されました。


今すぐExcelで数値を引き算する必要がありますか? 短い答えはこちらです: 結果を表示したいセルをクリックし、"="を入力し、最初のセルをクリックして、マイナス記号 (-) を入力し、2番目のセルをクリックし、Enterキーを押します。 これが最も一般的なケースである2つの数字、2つのセル、1つの数式の真のすべてです。

しかし、Microsoft Excelは、一つのアプローチだけでなく、より柔軟性を提供します。 複数のセルを一度に引き算する必要がある場合や、2つの列全体で作業する場合、日付を引き算する、時間値を引き算する、割合を扱う、または行列全体で計算を実行する必要がある場合、このガイドはすべてのメソッドをカバーしています。 これをExcelスキルに組み込めば、最も複雑なタスクでもためらうことなく対処できるようになります。 *

方法1: シンプルな引き算の数式 (最速)

Excelでの単純な引き算はここから始まります。そして、ほとんどの毎日の作業では、それ以上進む必要はありません。

  1. 答えを表示したい結果セルをクリックします (例: C1)。
  2. 等号を入力します: =
  3. 開始値の入った最初のセルをクリックします (例: A1)、または直接数字を入力します。
  4. マイナス記号を入力します: -
  5. 引き算する値の入ったセルをクリックします (例: B1)、または数字を入力します。
  6. Enter を押します。

次の数式がC1に表示されます: =A1-B1。Excelは即座に計算された差を表示します。

Excel での引き算: すべての方法を説明 (2026): 画像 1 - シンプルな3列レイアウト、

なぜこれが機能するか: Excelは = で始まるものをすべて数式として扱います。 マイナス記号は引き算演算子であり、日常の数学で使用するのと同じ記号です。

プロのヒント: 単一の数式で複数の数字を引き算することができます。マイナス記号を接続して行います。 開始値から3つの値を引くには、=A1-B1-C1 と書きます。必要な数だけ接続でき、Excelはすべての計算を左から右に行います。

SUBTRACT関数に関する注: Excelには組み込みのSUBTRACT関数はありません。 Excelでのすべての引き算のインスタンスは、数式内で直接マイナス記号 (-) を使用します。 これは、多くの新しいユーザーを驚かせるもので、SUMやAVERAGEが機能する方式を期待しますが、マイナス記号演算子がExcelで引き算するための正しい唯一の方法です。 *

方法2: 列全体を一度に引き算する (フィルハンドル)

一つの数式を機能させたら、フィルハンドルを使用して列全体をコピーするのにわずか1秒かかります。

  1. 列の最初のセルに引き算数式を入力します (例: C1セルに =A1-B1)。
  2. C1をクリックして選択します。

  3. セルの右下隅の小さな緑色の四角形の上にカーソルを置きます。それがフィルハンドルです。 カーソルが薄いクロスヘア + に変わります。
  4. フィルハンドルをクリックして下方向にドラッグし、希望するすべての行をカバーします。
  5. マウスを放します。Excelは調整された数式を自動的にすべてのセルに入力します。

Excel での引き算: すべての方法を説明 (2026): 画像 2 - フィルハンドル(緑の四角)と各行に表示されている調整された数式

Excelはセルの参照を下に入力する際に自動で更新します。 C2には =A2-B2 が含まれ、C3には =A3-B3 が含まれるようになります。 これを相対参照と呼び、行と列のデータを扱う場合の時間を節約する最も有用なExcelスキルのひとつです。

ダブルクリックショートカット: データに空白セルや隣接する列にギャップがない場合、フィルハンドルをドラッグする代わりにダブルクリックすることができます。 Excelは自動的に隣接列の長さに合わせてフィルダウンします。多くのセルに数式を一度に適用するのに理想的です。 *

方法3: SUM関数を使用して複数のセルを引く

単純で清潔な数式で単一の開始値から複数のセルを引き算するには、負の値を持つSUM関数を使用します。

アプローチ: 引き算したい値をSUM内で負の数字として渡します。

数式 — 個別に複数のセルを引く:

=SUM(A1, -B1, -C1, -D1)
=SUM(A1, -B1, -C1, -D1)
The provided C# code appears to be a fragment or possibly a formula from a spreadsheet application like Excel, rather than actual C# code. If this is intended to be a formula, it doesn't directly translate to VB.NET as it stands. However, if you meant to convert a C# code snippet that uses a similar operation, please provide the complete C# code for accurate conversion.
$vbLabelText   $csharpLabel

数式 — 範囲を1つのセルから引く (最も一般的なパターン):

=A1-SUM(B1:B5)
=A1-SUM(B1:B5)
=A1-SUM(B1:B5)
$vbLabelText   $csharpLabel

この2番目のバージョンは、1つのセルに予算または合計があり、多くのセルに分散された費用または控除のリストがあるときに特に有用です。

Excel での引き算: すべての方法を説明 (2026): 画像 3 -

これをいつ使用するか: 2つまたは3つ以上の値を引き算する必要があるときはいつでも、このパターンはよりクリーンで、複数の列に複数のマイナス記号をチェーンするよりもはるかに監査しやすいです。 また、後で範囲を再確定し直すことなく拡張するのが簡単です。 *

方法4: 二列を引き算する (行ごと)

二列を引き算することは、Excelで最も一般的なタスクのひとつであり、例えば"収入"列から"コスト"列を引いて各行で利益を計算する場合などです。

  1. 結果セル(例:C1)に =A1-B1 を入力します。
  2. Enter を押します。
  3. 再度C1をクリックし、その後フィルハンドルを使用してすべての行に対して数式を下にドラッグします。

Excelは、A1-B1、A2-B2、A3-B3 といったように、2つの列の各ペアのセルを自動的に引き算します。

これは、表形式データを行と列で処理するための標準アプローチであり、数式構造を変更することなく任意の数の行に拡大することができます。 *

方法5: 配列数式を使って引き算する (複数の列を一度に引く)

配列数式を使うと、範囲全体に引き算が可能で、複数の結果を返したり、一つの答えにまとめたりすることができ、手動で行ごとに記入することなく実行できます。 複数列から同時に値を引き算するとき、または行列引き算を行うときにこのアプローチを選択します。

単一配列数式 — 二列間の全差を合計

A列のすべての値をB列から引き、その合計差を一つの結果セルで返すには次の単一配列数式を使用します。

=SUM(A1:A10-B1:B10)
=SUM(A1:A10-B1:B10)
The provided code appears to be an Excel formula rather than C# code. If you have C# code that you would like converted to VB.NET, please provide that code for conversion.
$vbLabelText   $csharpLabel

古いバージョンのExcel(Microsoft 365 / Excel 2019より前)では、単にEnterを押す代わりに、Ctrl+Shift+Enterを押してこれを配列数式として確認します。 Excelはそれを波括弧で表示します: {=SUM(A1:A10-B1:B10)}。 Microsoft 365では、Enterを単独で押すだけで十分です。動的配列が自動的に処理します。

Excel での引き算: すべての方法を説明 (2026): 画像 4 - 結果セルに=SUM(A1:A10-B1:B10)の数式

行列引き算式 — 一つの行列を他の行列から引く

同じサイズのデータブロックを2つ持っていて、その一つを引き算する必要がある場合、Excelはこれをすべての行と列で一度に処理できます。

例: A1:C3 (最初の行列) と E1:G3 (第2行列) の値。 行列の引き算結果をI1:K3に表示するには:

  1. 出力範囲 I1:K3 を選択します (データブロックと同じサイズ)。

    1. 次の数式をタイプします:
    =A1:C3-E1:G3
    =A1:C3-E1:G3
    The provided C# code appears to be a fragment of a formula or expression rather than valid C# code. It seems to resemble a spreadsheet formula rather than a programming construct. If you intended to provide a different piece of C# code, please clarify or provide the correct code for conversion.
    $vbLabelText   $csharpLabel
  2. Excel 365では、Enterを押すと、結果が自動的にすべての出力セルにスピルされます。
  3. 古いExcelでは、Ctrl+Shift+Enterを押して選択した範囲全体で配列数式を確認します。

配列数式は範囲内のそれぞれの対応するセルペアで同時に動作します。 これは、一つの行列を他の行列から引くまたは複数の列からの値をバルクで引き算するときに個々のセルのために個別に数式を書くよりもはるかに効率的です。 *

方法6: 特殊貼り付け — 多くのセルから同じ数を引く

この方法は十分には使われていませんが非常に実用的です。 これは、データに数式列を追加せずに、その場でセルの全範囲から同じ数を引き、その元の値を上書きすることを可能にします。

使用例: 50の価格を1つ100ドル削減し、価格を元のセルに直接更新したい。

ステップ:

  1. 引き算したい数をタイプします (例: 10) 空のセルに。
  2. そのセルを右クリックし、コピー を選択 (または Ctrl+C を押します)。

  3. 引き算したいセル範囲を選択します (例: A1:A50)。
  4. 選択した範囲を右クリックして、貼り付けのオプション を選択します (または Ctrl+Alt+V を押します)。

  5. 貼り付けのオプションダイアログで、"貼り付け"下のと"操作"下の引き算を選択します。

  6. OK をクリックします。

Excelは選択したすべてのセルからコピーした数を引き、元の値をその場で直接上書きします。

重要: この方法はセルの値を永久に変更します。 それを元に戻す必要がある場合は、最初に元のデータのバックアップコピーを保持するか、または変更後すぐにCtrl+Zを使用します。 *

方法7: 右クリックコンテキストメニュー (特殊貼り付けショートカット)

Microsoft Excelで特殊貼り付けが常に1クリック離れていることを指摘する価値があります。多くのユーザーはリボンメニューをナビゲートせずにこの機能への直接アクセスを提供します。

値をコピーした後:

対象範囲を右クリック → 形式を選択して貼り付け → 演算を 減算 に設定 → OK

このワークフローはマウスで完全に管理され、キーボードショートカットは不要です。これは、キーボードコマンドよりもポイントアンドクリックナビゲーションを好む場合に最もアクセスしやすいアプローチです。 *

方法 8: 日付を減算して差を見つける

Excelは日付を内部的に連続番号として保存します。つまり、他の数値を減算するのと同じ方法で日付を減算して、それらの間の差を決定できます。

2つの日付を減算して、その間の日数を得る:

=B1-A1
=B1-A1
$vbLabelText   $csharpLabel

A1が開始日で、B1が終了日です。 答えは、それらを分ける日数です。

結果が日付として表示された場合は、セルの書式を修正してください: 式を入力した後、結果のセルが"1/14/1900"のように日付として表示される場合があります。 これは、Excelが自動的に結果に日付書式を適用したために発生します。 それを修正するには:

  1. 結果のセルを右クリック → セルの書式設定
  2. 数値の下で、数値または標準を選択します。

  3. OKをクリックします。

セルは、現在2つの日付の間の正しい整数差を表示します。 *

方法 9: 時間値を減算して時間を正しく表示する

時間値を減算するのは、日付を減算するのと同じ方法です。単純な減算式を入力すると、Excelが計算を処理します。 キーは、時間を正しく表示するために正しいセル書式を適用することです。

基本的な時間の減算:

=B1-A1
=B1-A1
$vbLabelText   $csharpLabel

A1が開始時間で、B1が終了時間です。

24時間未満の期間の時間を正しく表示する: 結果のセルを右クリック → セルの書式設定 → ユーザー設定 → h:mm を入力 → OK。

24時間以上の期間の時間を正しく表示する: [h]:mm をユーザー設定の書式として使用します。 角括弧は、Excelが24時間で時間を繰り上げないように指示するため、30時間の期間が6:00ではなく30:00として表示されます。

深夜を跨ぐ時間値の減算: シフトが午後11:00に始まり午前6:00に終わる場合、単純に =B1-A1 とすると負の結果が得られます。 それを修正するには:

=MOD(B1-A1, 1)
=MOD(B1-A1, 1)
`=MOD(B1-A1, 1)`
$vbLabelText   $csharpLabel

MOD 関数は計算を深夜でラップし、常に正の経過時間を返します。 *

方法 10: 絶対セル参照で減算する(1つのセルを固定)

時には、特定の固定セルを列全体の値から減算したいことがあります。例えば、税率や地域の基本コストを1つの参照セルに保存し、データセットのすべての行から減算する場合などです。

例えば、=A1-B1のような標準式を使ってフィルハンドルで下にドラッグすると、Excelは両方のセル参照を更新します:B1はB2、B3などになります。 B1にすべての行のための固定値が含まれている場合、これは望ましくありません。

修正方法: 参照をロックするためにドル記号を追加します。 これを絶対参照と呼びます。

=A1-$B$1
=A1-$B$1
The provided code appears to be an Excel formula rather than C# code. If you have C# code that needs conversion to VB.NET, please provide it, and I'll be happy to assist!
$vbLabelText   $csharpLabel

これで、式を下にドラッグすると、A1はA2、A3、などと更新されますが、$B$1はすべての行のためにB1にロックされたままです。 列Aの他のセルから減算する場合、常にB1からの同じ数値が使用されます。

参照タイプを切り替えるためのキーボードショートカット: 式の中にある任意のセル参照をクリックして、F4を押します。 Excelはすべての4つのオプションを循環します:相対(A1) → 絶対($A$1) → 行ロック(A$1) → 列ロック($A1)。 必要なバージョンに達するまで F4 を繰り返し押します。 *

方法 11: パーセンテージを減算する

Excelでパーセンテージを減算するには、Excelがそれらを内部的にどのように保存しているかを理解する必要があります。 Excelはすべてのパーセンテージ値を小数として保持するため、20%は20ではなく0.2として保存されます。これにより、計算されたセルで予期しない結果が生じる可能性があります。

別のセルに保存されたパーセンテージを減算するには:

=A1-B1
=A1-B1
$vbLabelText   $csharpLabel

A1に500が含まれ、B1に20%(0.2として保存される)が含まれる場合、この式は499.8を出力します。0.2を減算するので、20ではありません。これはほぼ確実に意図した結果ではありません。

元の値のパーセンテージを減算する(最も一般的な現実世界での使用):

=A1-(A1*B1)
=A1-(A1*B1)
$vbLabelText   $csharpLabel

または同等に:

=A1*(1-B1)
=A1*(1-B1)
=A1 * (1 - B1)
$vbLabelText   $csharpLabel

A1が500でB1が20%の場合、これは500 − 100 = 400を正しく計算します。

ハードコードされたパーセンテージを減算する場合:

=A1-(A1*20%)
=A1-(A1*20%)
=A1 - (A1 * 0.2)
$vbLabelText   $csharpLabel

これにより、別個のパーセンテージセルが不要になり、同じように動作します。 *

方法 12: 自動減算のためのVBAマクロ

毎週Excelデータに対して同じ減算操作を繰り返している場合、簡単なVBAマクロでプロセス全体を自動化し、オンデマンドで実行することができます。

注意: 基本的なマクロを記録するためプログラミングの経験は必要ありません。 Microsoft Excelに組み込まれているマクロレコーダーは、あなたが取ったすべてのアクションをキャプチャし、瞬時に再生します。

減算マクロを記録するには:

  1. 表示マクロマクロの記録に移動します。

  2. 名前を付け(例:SubtractCosts)、必要ならショートカットキーを割り当てます。
  3. OKをクリックすると記録が開始されます。
  4. 通常通り減算の手順を実行します(式を入力し、フィルハンドルをドラッグし、Enterキーを押すなど)。
  5. 表示マクロ記録終了に移動します。

表示 → マクロ → マクロの表示 → 実行を実行、または割り当てたショートカットキーを使っていつでも実行できます。

ユーザーがVBAを直接書きたい場合は、行をループして列Bを列Aから減算し、各結果を列Cに書き込む簡単な例があります:

Sub SubtractColumns()
    Dim i As Integer
    For i = 1 To 10
        Cells(i, 3).Value = Cells(i, 1).Value - Cells(i, 2).Value
    Next i
End Sub
Sub SubtractColumns()
    Dim i As Integer
    For i = 1 To 10
        Cells(i, 3).Value = Cells(i, 1).Value - Cells(i, 2).Value
    Next i
End Sub
Sub SubtractColumns()
    Dim i As Integer
    For i = 1 To 10
        Cells(i, 3).Value = Cells(i, 1).Value - Cells(i, 2).Value
    Next i
End Sub
$vbLabelText   $csharpLabel

Alt+F11でVBAエディターを開き、このコードをワークブックのモジュールにペーストし、F5で実行します。 *

よくある問題とトラブルシューティング

簡単な減算式でも、現実世界のデータで誤動作することがあります。 最も一般的な問題とその修正方法を以下に示します。


Problem: The result shows #VALUE!

原因: 減算しているセルの1つ以上に数値ではなくテキスト文字列が含まれている。 これは、他のシステムからデータがインポートされたときによく起こります。数値のように見えても、Excelはそれをテキストとして保存するため、計算を実行できません。

修正方法: 問題のあるセルを選択し、左上の小さな緑の三角形を探し、警告アイコンをクリックし、数値に変換を選択します。 または、式内で強制的に変換を行います:=VALUE(A1)-VALUE(B1)。 *

問題:結果セルに数値ではなく日付が表示される

原因: Excelは自動的に結果に日付のセル書式を適用しました(通常、日付値を減算する場合や、事前にセル書式が日付に設定されている場合)。

修正方法: 結果のセルを右クリック → セルの書式設定数値標準または一般OK *

問題:数式がテキスト文字列として表示される(式のテキストが見え、答えが見えない)

原因: 式を入力する前にセルがテキストにフォーマットされていたため、Excelはそれをリテラル文字列として保存し、評価しませんでした。

修正方法: セルを選択し、ホーム数値のドロップダウン → セル書式を"テキスト"から"標準"に変更します。それから F2 を押して編集し、Enter を押して再評価します。 Excelは今、計算された結果を表示します。 *

問題:正の値が期待されるときに負の数が表示される

原因: 減算の順序が逆です。 =B1-A1は、=A1-B1から得られる符号と逆です。これは、数式を素早く設定する際によくある間違いの1つです。

修正方法: 式の中のセル参照を入れ替えます。 どちらの値が大きいかにかかわらず常に正の答えを取得したい場合は、ABS()で式をラップしてください:=ABS(A1-B1)。 *

問題:フィルハンドルがセル参照を調整せずに値をコピーする

原因: 相対参照を意図したところに絶対参照($A$1)を使用したか、数式を入力する前に元のセルがテキストとしてフォーマットされていた可能性があります。

修正方法: 数式にクリックし、参照内にカーソルを置いて、F4を繰り返し押して、ドル記号を削除します。 それからフィルハンドルを再びドラッグします。 *

問題:範囲内の空のセルがエラーやゼロを引き起こす

原因: データ内の空のセルが式で参照されると、SUMはそれをゼロとして扱います(通常は問題ありません)が、直接の数式、例えば=A1-B1でB1が空の場合、A1の値が変更されずに返され、文脈上誤解されることがあります。

修正方法: IFERRORを使用して空のセルを適切に処理します:

=IFERROR(A1-B1, 0)
=IFERROR(A1-B1, 0)
The provided code snippet appears to be an Excel formula rather than C# code. If you have a C# code snippet that you would like to convert to VB.NET, please provide it, and I'll be happy to assist you with the conversion.
$vbLabelText   $csharpLabel

または、減算する前に明示的にIFを使用してチェックします:

=IF(B1="", A1, A1-B1)
```* * *

### Problem: Subtracting percentages gives unexpected results

**Cause:** Excel stores percentages as decimals. Subtracting A1 - 20% subtracts 0.2 from A1's value, not 20.

**Fix:** Use=A1*(1-B1)to subtract a percentage of the original value. Use =A1-20 to subtract the literal number 20 regardless of how values are formatted in other cells.* * *

## Edge Cases the Other Articles Miss

**Subtracting across worksheets:** You can subtract values from different sheets in one formula. The syntax is =Sheet1!A1-Sheet2!A1. While building your formula, simply click the cell on the other sheet and Excel writes the full reference automatically.

**Subtracting with IFERROR for bulletproof formulas:** Whenever there is any chance a cell might be empty or return an error, wrap your formula to prevent the error from propagating to other cells that depend on this result:

```cs
=IFERROR(A1-B1, 0)
=IF(B1="", A1, A1-B1)
```* * *

### Problem: Subtracting percentages gives unexpected results

**Cause:** Excel stores percentages as decimals. Subtracting A1 - 20% subtracts 0.2 from A1's value, not 20.

**Fix:** Use=A1*(1-B1)to subtract a percentage of the original value. Use =A1-20 to subtract the literal number 20 regardless of how values are formatted in other cells.* * *

## Edge Cases the Other Articles Miss

**Subtracting across worksheets:** You can subtract values from different sheets in one formula. The syntax is =Sheet1!A1-Sheet2!A1. While building your formula, simply click the cell on the other sheet and Excel writes the full reference automatically.

**Subtracting with IFERROR for bulletproof formulas:** Whenever there is any chance a cell might be empty or return an error, wrap your formula to prevent the error from propagating to other cells that depend on this result:

```cs
=IFERROR(A1-B1, 0)
The provided text appears to be a mix of Excel formulas and explanations rather than C# code. However, I can convert the logic of the Excel formulas into VB.NET code if that is what you need. Here's how you might represent the logic of these Excel formulas in VB.NET:

net

This VB.NET code assumes `A1` and `B1` are variables that hold the values you would typically have in Excel cells. The code demonstrates how to handle conditional logic and error handling similar to Excel's `IF` and `IFERROR` functions.
$vbLabelText   $csharpLabel

深夜を跨がる時間値の減算: 深夜を跨ぐシフト追跡に(午後11時開始、午前6時終了)=MOD(B1-A1, 1)を使用して、常に正の経過時間を返します。

フィルタリングされたデータ(表示されている行のみ)での減算: 標準の減算式は非表示の行を結果に含んでしまいます。 フィルタリング後の表示されたセルとだけ作業するには、まずSUBTOTALを使用して可視データを集計するか、計算を行う前にフィルタリングされた範囲を新しい場所にコピーします。

配列式なしで複数列を一括減算: =A1-B1-C1-D1-E1-F1 ではなく=A1-SUM(B1:F1)を使用します。 それは拡張が容易で、読みやすく、列の追加や削除時のエラーを起こしにくくします。 *

For Developers: Subtract in Excel with IronXL (C#)

.NETアプリケーションを構築している場合、Excelファイルを読み取り、修正、生成するためには、報告パイプライン、金融ツール、ドキュメント自動化システム、Microsoft Excelを手動で開いて数式を実行することに頼るよりも、直接C#で計算を行う方がはるかにコントロールを得られます。

IronXLは、サーバーにExcelをインストールする必要なく、Excelファイルを読み書きすることができる.NETライブラリです。 以下の例は、2つの列から値を減算し、結果を3列目に書き込むものです。前述の2列の減算方法とプログラム的に同等です:

using IronXL;
// Load an existing workbook (or create one fresh with WorkBook.Create())
WorkBook workbook = WorkBook.Load("financials.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
// Loop through rows: subtract Column B from Column A, write each result to Column C
for (int row = 1; row <= 10; row++)
{
    double valueA = sheet[$"A{row}"].DoubleValue;
    double valueB = sheet[$"B{row}"].DoubleValue;
    sheet[$"C{row}"].Value = valueA - valueB;
}
workbook.SaveAs("financials_updated.xlsx");
using IronXL;
// Load an existing workbook (or create one fresh with WorkBook.Create())
WorkBook workbook = WorkBook.Load("financials.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
// Loop through rows: subtract Column B from Column A, write each result to Column C
for (int row = 1; row <= 10; row++)
{
    double valueA = sheet[$"A{row}"].DoubleValue;
    double valueB = sheet[$"B{row}"].DoubleValue;
    sheet[$"C{row}"].Value = valueA - valueB;
}
workbook.SaveAs("financials_updated.xlsx");
Imports IronXL

' Load an existing workbook (or create one fresh with WorkBook.Create())
Dim workbook As WorkBook = WorkBook.Load("financials.xlsx")
Dim sheet As WorkSheet = workbook.DefaultWorkSheet

' Loop through rows: subtract Column B from Column A, write each result to Column C
For row As Integer = 1 To 10
    Dim valueA As Double = sheet($"A{row}").DoubleValue
    Dim valueB As Double = sheet($"B{row}").DoubleValue
    sheet($"C{row}").Value = valueA - valueB
Next

workbook.SaveAs("financials_updated.xlsx")
$vbLabelText   $csharpLabel

Excelのインストールは不要で、COM相互運用の問題もなく、Windows、Linux、macOS上で実行されます。 IronXLは完全な数式評価、セルフォーマット、範囲操作、任意のサイズの行列データの読み取りをサポートし、スプレッドシートを手動で開くことが現実的でない自動バッチワークフローに自然に適合します。 *

クイックリファレンス:使用する方法

|状況|最適な方法| |---|---| |2つの数値または2つのセルを1回減算|簡単な式:=A1-B1| |列全体にわたって減算|式 + フィルハンドルドラッグ| |1つの合計から複数のセルを減算|=A1-SUM(B1:B5)| |複数の列を1つの結果に減算|=A1-SUM(B1:F1)| |多数のセルから同じ数を減算|形式を選択して貼り付け → 減算| |すべての行から固定参照セルを減算|絶対参照:=A1-$B$1| |別の行列から1行列を減算|配列式:=A1:C3-E1:G3| |日付を減算 — 日の違いを見つける|=B1-A1 + 一般セルフォーマット| |時間値を減算し、時間を正しく表示する|=B1-A1 + [h]:mmセルフォーマット|

|値のパーセンテージを減算する|=A1*(1-B1)| |空のセルやエラーを適切に処理する|=IFERROR(A1-B1, 0)| |毎週同じ減算操作を繰り返す|VBAマクロを記録する| |自動化されたまたはサーバー側のExcel減算| IronXL (.NET) |


最終的な考え

Excelの減算は最初は非常に簡単に見え、基本的なケースでは本当にそうです。 しかし、現実世界のデータを扱うことは、日付、時間値、パーセンテージ、空のセル、テキスト文字列、フィルタされた行、マルチカラムまたはマトリックス範囲に遭遇することを意味します。 各状況でどのツールを使用するかを知ることは、Excelで基本的な計算を行える人と、複雑なタスクを自信を持って処理できる人を分けます。

ほとんどの作業には、=A1-B1とフィルハンドルが非常に役立ちます。 SUMベースのアプローチは、複数のセルをクリーンに処理します。 絶対参照は固定値を固定します。 配列式と行列減算式は、全範囲にわたって一度に減算が必要なシナリオを処理します。 そして、トラブルシューティングセクションでは、インポートされたまたは一貫性のないデータで作業する際に最も注意を引く可能性のある状況をカバーしています。

これらはコアなExcelスキルであり、今すべてが一か所にまとまっています。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

アイアンサポートチーム

私たちは週5日、24時間オンラインで対応しています。
チャット
メール
電話してね