VBAでのみ個別正の値を追加
正の一意の値のみを追加する方法がわからない場合は、この記事が役に立ちます。
この記事では、VBAコードを使用してExcelで明確な正の値のみを追加する方法を学習します。
質問):マクロで、負の数と正の数を含む、指定された範囲内のすべての個別の正の数を合計したい。
以下は、私たちが持っているデータのスナップショットです:
以下の手順に従う必要があります:
[開発者]タブをクリックし、[コード]グループから[VisualBasic]を選択します
標準モジュールに次のコードを入力します:-
関数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
終了関数
-
セルC2では、数式は
になります。 === * = AddUnique(A2:A6)
-
コードが繰り返される値を無視するかどうかを確認するため。セルA1の値を50に変更して、結果を見てみましょう。
このようにして、マクロコードを介して明確な正の値を追加できます。
//wp-content/uploads/2015/06/Download-Sample-File-xlsm.xlsm[Download-Sample File-xlsm]