正の一意の値のみを追加する方法がわからない場合は、この記事が役に立ちます。

この記事では、VBAコードを使用してExcelで明確な正の値のみを追加する方法を学習します。

質問):マクロで、負の数と正の数を含む、指定された範囲内のすべての個別の正の数を合計したい。

以下は、私たちが持っているデータのスナップショットです:

image 1

以下の手順に従う必要があります:

[開発者]タブをクリックし、[コード]グループから[VisualBasic]を選択します

image 2

標準モジュールに次のコードを入力します:-

関数AddUnique(ByRef inputrange As Range、_

オプションのIgnoreTextAs Boolean = True、_

オプションのIgnoreErrorAs Boolean = True、_

オプションのIgnoreNegativenumbersAs Boolean = True)

Dim Distinctnumbers As Double

範囲としての薄暗いセル

オブジェクトとしての薄暗いdict

Set dict = CreateObject( “Scripting.dictionary”)

distinctnumbers = 0

各セルのinputrange.Resize(inputrange.Rows.Count、1)

cval = cell.Value

If IgnoreText Then

そうでない場合(VBA.IsNumeric(cval))Then cval = 0

その他

AddUnique = CVErr(0)

終了関数

終了If

===

If IgnoreError Then

If IsError(cval)Then cval = 0

その他

AddUnique = CVErr(1)

終了関数

終了If

If IgnoreNegativenumbers Then

If cval <0 Then cval = 0

その他

AddUnique = CVErr(2)

終了関数

終了If

If Not dict.Exists(cval)Then

dict.Add cval、cval

Distinctnumbers = Distinctnumbers + cval

終了If

次へ

AddUnique = distinctnumbers

終了関数

image 4

  • セルC2では、数式は

になります。 === * = AddUnique(A2:A6)

image 5

  • コードが繰り返される値を無視するかどうかを確認するため。セルA1の値を50に変更して、結果を見てみましょう。

image 6

このようにして、マクロコードを介して明確な正の値を追加できます。

Excel//wp-content/uploads/2015/06/Download-Sample-File-xlsm.xlsm[Download-Sample File-xlsm]