Excel で正の数(または負の数)だけの平均を求めるにはどうすればよいですか?
Excel では、正と負の両方の値を含むデータ範囲において、「正の数だけ」あるいは「負の数だけ」の平均を求めたい場面がよくあります。これは特に、利益と損失、収益と費用など、正負の数値が異なる意味を持つシナリオを分析する際に重要です。標準のAVERAGE 関数を使うと、正負両方の値が計算に含まれてしまい、目的に合わない結果になる可能性があります。本チュートリアルでは、Excel で正または負の数値のみを正確に平均化するための実用的な方法をご紹介します。ユーザーのさまざまなニーズに対応するため、数式・組み込みツール・ VBA コードを使ったステップバイステップの手順を詳しく解説します。
Kutools for Excel で正または負の数のみの平均を表示する![]()
数式で正または負の数のみを平均化する
範囲内の正の数のみを平均化するには、Excel の配列数式を使って、指定した条件に一致する値だけを効率的に取り込むことができます。アドインや追加ツールを使わず、ワークシート上で数式だけで素早く平均を算出したい場合に最適です。
1。結果を表示したい空白セルに、次の数式を入力してください:
=AVERAGE(IF(A1:D10>0,A1:D10,"")) この例では、A1:D10が正の数値と負の数値の両方を含むデータ範囲を表しています。

2。数式を入力した後、配列数式として確定させるには、Ctrl + Shift + Enterを同時に押してください。正しく実行されると、数式バー内の数式の前後に波括弧{ }が表示されます(下図参照):

数式の説明と応用性:
- この手法は、横方向および縦方向の両方の範囲に適用可能です。ワークシートに合わせて範囲を調整してください。
- 範囲内に正の数が存在しない状態で、正の値用のこの数式を使用すると、平均対象となる数値が存在しないため、結果として#DIV/0!エラーが表示されます。以下の負の数用の数式を使用する場合も同様です。これを回避するには、次のとおり数式を
IFERRORで囲んで、より堅牢にしてください:
=IFERROR(AVERAGE(IF(A1:D10>0,A1:D10,"")), "") 負の数のみの平均を計算するには、次の数式を使用します:
=AVERAGE(IF(A1:D10<0,A1:D10,"")) - 数式を入力した後は、正しく機能させるためにCtrl + Shift + Enterを押すのをお忘れなく!
注意点:
1。A1:D10は条件付き平均を計算する範囲です。データに応じて、必要に応じて調整してください。
2。ゼロや特定の値を除外したい場合は、数式内の論理テストをさらにカスタマイズできます。
3。Excel 365 またはExcel 2019 以降のバージョンでは、動的配列がネイティブにサポートされているため、Ctrl + Shift + Enterを押す必要はありません。それ以前のバージョンでは、配列数式として使用するにはこのキーの組み合わせを押す必要があります。
4。データに#DIV/0!や#N/Aなどのエラーが含まれていると、数式もエラーを返すことがあります。こうした例外をスマートに処理するには、IFERROR 関数の使用をぜひ検討してください。
Kutools for Excel で正または負の数のみの平均を表示する
Kutools for Excelをインストール済みの場合、特定のセルを選択する機能を使えば、範囲内の正の数だけ、または負の数だけを瞬時に選択できます。その後、平均値がExcel のステータスバーに直接表示されるため、追加で数式を入力する必要がありません。この方法は、複雑な数式を使わずに、データの特定のタイプを視覚的かつインタラクティブに集計したいユーザーに特に最適です。
1。正負両方の数値を含む、分析したいデータ範囲を選択します。
2。Kutools > 選択 > 特定のセルを選択するへ移動します(下図参照):

3。特定のセルを選択するダイアログボックスで、次の操作を行ってください:
- セルオプションを選択タイプの下から選択します。
- 正の数の条件を設定するには、指定タイプドロップダウンから次より大きいを選択し、値フィールドに0を入力します。
- 負の数の場合は、次より小さいを選択し、再度 0を入力してください。
OKをクリックすると、Kutools が指定した条件に一致するセルを自動的に選択し、選択されたセルの数を確認できるダイアログが表示されます。

4。セルを選択すると、ウィンドウ右下のExcel ステータスバーにその選択範囲の平均値が即座に表示されます。この計算はリアルタイムで自動更新され、数式を入力する必要は一切ありません。
![]() | ![]() |
| 正の数のみの結果 | 負の数のみの結果 |
メリットと留意点:
- 数式を書いたり覚える必要がなく、即座に簡易分析を行うのに最適です。
- この方法は小規模から中規模のデータセットに最適ですが、選択範囲に多数の非数値セルやエラーが含まれる場合は、正確性を確保するためステータスバーの集計結果を手動でご確認ください。
- ステータスバーを右クリックすれば、表示したい集計項目(平均、合計、個数など)を簡単にカスタマイズできます。
デモ:Kutools for Excel で正または負の数のみを合計/平均/カウント Kutools for Excel:300 個を超える便利なツールがすぐそこへ!AI 搭載の機能で、よりスマートでスピーディーな作業をぜひお楽しみください!今すぐダウンロード!
VBA コードで正または負の数のみの平均を自動計算する
異なる範囲でこれらの平均を頻繁に計算する必要がある方や、プロセスの自動化をご希望の方にとって、シンプルな VBA マクロの活用は作業時間の大幅な短縮と正確性の向上を実現します。このアプローチは、繰り返し発生するタスクや複雑なデータ構成があり、かつExcel の Visual Basic for Applications(VBA)エディターに慣れている場合に最適です。
1。開発者ツール > Visual Basic をクリックして、Microsoft Visual Basic for Applications ウィンドウを開きます。エディターで、挿入 > モジュールをクリックし、新規モジュールに以下のいずれかのコードをコピー&ペーストします。
範囲を選択してください内の正の数のみの平均を計算するには、次のマクロを使用します:
Sub AveragePositiveNumbers()
Dim rng As Range
Dim cell As Range
Dim sum As Double
Dim count As Long
Dim result As Variant
xTitleId = "KutoolsforExcel"
On Error Resume Next
Set rng = Application.Selection
Set rng = Application.InputBox("Please select the range to average positive numbers", xTitleId, rng.Address, Type:=8)
On Error GoTo 0
If rng Is Nothing Then Exit Sub
sum = 0
count = 0
For Each cell In rng
If IsNumeric(cell.Value) And cell.Value > 0 Then
sum = sum + cell.Value
count = count + 1
End If
Next cell
If count > 0 Then
result = sum / count
MsgBox "The average of only the positive numbers is " & result, vbInformation, xTitleId
Else
MsgBox "No positive numbers found in the selected range.", vbExclamation, xTitleId
End If
End Sub 負の数のみの平均を計算するには、以下のコードを使用します:
Sub AverageNegativeNumbers()
Dim rng As Range
Dim cell As Range
Dim sum As Double
Dim count As Long
Dim result As Variant
xTitleId = "KutoolsforExcel"
On Error Resume Next
Set rng = Application.Selection
Set rng = Application.InputBox("Please select the range to average negative numbers", xTitleId, rng.Address, Type:=8)
On Error GoTo 0
If rng Is Nothing Then Exit Sub
sum = 0
count = 0
For Each cell In rng
If IsNumeric(cell.Value) And cell.Value < 0 Then
sum = sum + cell.Value
count = count + 1
End If
Next cell
If count > 0 Then
result = sum / count
MsgBox "The average of only the negative numbers is " & result, vbInformation, xTitleId
Else
MsgBox "No negative numbers found in the selected range.", vbExclamation, xTitleId
End If
End Sub 2。マクロを入力したら、Excel に戻り、F5キーを押すか、実行をクリックします。表示されるダイアログで計算対象の範囲を選択すると、平均値がメッセージボックスに表示されます(該当する数値が見つからない場合は警告が表示されます)。
ヒントとトラブルシューティング:
- マクロを保存して再利用したい場合は、必ずブックをマクロ有効ファイル()
.xlsm)として保存してください。 - このマクロは数値が入力されたセルのみを平均化します。テキスト、空白セル、エラーを含むセルは自動的に無視されます。
- データセットに非常に大量のデータや頻繁な変更が含まれる場合は、VBA による自動化で手作業ミスや保存時間のロスを回避できます。
- マクロのセキュリティ警告が表示された場合は、[Excel のオプション]>[トラストセンター]にあるマクロ設定を調整して、マクロの実行を許可してください。
ご自身のワークフローとExcel スキルを考慮して、使用方法をお選びください。
- 数式は高速で柔軟性に優れていますが、配列入力と正しい参照が不可欠です。
- Kutoolsはインタラクティブな操作を効率化し、数式を手入力する手間を省けます。
- VBA マクロは、定期的または自動でレポートを生成する環境に最適です。
計算エラーや予期しない結果が発生した場合は、指定範囲に不要なデータ型やエラー値が含まれていないかを確認し、正しい条件(ゼロより大きい/小さいなど)が適用されているかを改めてご確認ください。必要に応じて参照範囲を調整してください。さらに高度な除外処理(エラーや特定の値を無視するなど)を行うには、数式または VBA 内に適切なエラー処理およびフィルタリングロジックを組み込んでください。
最高の 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 日間のフル機能トライアル— 登録不要、クレジットカード不要
- 最高のお得感— 個別アドイン購入よりお得

