Excelで文字単位や区切り文字が含まれた数値の合計を求めるユーザー定義関数

 

Excelで文字単位や区切り文字が含まれた数値の合計を求めるユーザー定義関数「SUMNUMBERS」

この記事では、Excelで文字単位や区切り文字が含まれた数値の合計を求めるためのユーザー定義関数「SUMNUMBERS」を紹介します。この関数を使用することで、通常のSUM関数では難しい、文字単位や区切り文字が含まれた数値の合計を簡単に計算できます。

SUMNUMBERS関数の概要

SUMNUMBERS関数は、指定された範囲内のセルに含まれる数値を抽出し、その合計を計算します。この関数は、通常のSUM関数では扱いにくい、単位や区切り文字が含まれた数値に対応しています。

ユーザー定義関数のコード

以下のコードをVBAエディタ(Altキーを押しながらF11キー)から標準モジュール(挿入から標準モジュール)へ貼り付けてください。貼り付けたらワークシートへ戻ります。

Function SUMNUMBERS(text As String) As Double
    Dim number As String
    Dim total As Double
    Dim i As Integer

    number = ""
    total = 0

    For i = 1 To Len(text)
        If IsNumeric(Mid(text, i, 1)) Or Mid(text, i, 1) = "." Then
            number = number & Mid(text, i, 1)
        Else
            If number <> "" Then
                total = total + CDbl(number)
                number = ""
            End If
        End If
    Next i

    If number <> "" Then
        total = total + CDbl(number)
    End If

    SUMNUMBERS = total
End Function

関数の使い方

この関数をExcelのVBAエディターに追加すると、Excelのシート上で文字単位や区切り文字が含まれた数値の合計を求めることができます。使い方は以下の通りです。

    =SUMNUMBERS(範囲)

範囲は、合計を求める対象となるセル範囲を指定します。

使用例

例えば、以下のような単位付きの金額が記録されたExcelシートがあるとします。

    A
    1   500円
    2   4500円
    3   3500円
    4   8000円

このデータを使って、セルB1に「=SUMNUMBERS(A1:A4)」と入力することで、単位付きの金額の合計を計算できます。

次に、以下のような区切り文字が含まれた数値が記録されたExcelシートがあるとします。

    A
    1   _3500
    2   10500
    3   8000
    4   _400

このデータを使って、セルB1に「=SUMNUMBERS(A1:A4)」と入力することで、区切り文字が含まれた数値の合計を計算できます。

まとめ

この記事では、Excelで文字単位や区切り文字が含まれた数値の合計を求めるためのユーザー定義関数「SUMNUMBERS」を紹介しました。この関数を利用することで、通常のSUM関数では難しい単位付きや区切り文字が含まれた数値の合計を簡単に計算することができます。

ぜひ、日々の業務や学習において、この便利な関数を活用してみてください。特に、金額や数量の集計が必要な場合に、文字単位や区切り文字を考慮せずに簡単に合計を求めることができます。

コメント