Legg bare til distinkte positive verdier med VBA

Innholdsfortegnelse

Hvis du lurer på hvordan du bare kan legge til positive og unike verdier, så er denne artikkelen noe for deg.

I denne artikkelen lærer du hvordan du bare legger til forskjellige positive verdier i excel ved hjelp av VBA -kode.

Spørsmål): Jeg vil at en makro skal summere alle de forskjellige positive tallene i et spesifisert område som inkluderer negative og positive tall.

Følgende er øyeblikksbildet av dataene vi har:

Vi må følge trinnene nedenfor:

  • Klikk på kategorien Utvikler
  • Velg Visual Basic fra kodegruppen

Skriv inn følgende kode i standardmodulen:-

Funksjon AddUnique (ByRef input -område som område, _

Valgfritt IgnoreText As Boolean = True, _

Valgfritt IgnoreError As Boolean = True, _

Valgfritt Ignorer Negativerumbers As Boolean = True)

Dim distinkte tall som dobbelt

Dim cell As Range

Dim dict Som objekt

Sett dict = CreateObject ("Scripting.dictionary")

distinkte tall = 0

For hver celle I inputrange.Resize (inputrange.Rows.Count, 1)

cval = cell.Value

If IgnoreText Then

Hvis ikke (VBA.IsNumeric (cval)) Da er cval = 0

Ellers

AddUnique = CVErr (0)

Avslutt funksjon

Slutt om

Hvis IgnoreError Da

Hvis IsError (cval) Da er cval = 0

Ellers

AddUnique = CVErr (1)

Avslutt funksjon

Slutt om

Hvis IgnorerNegativenumbers Da

Hvis cval <0 Da er cval = 0

Ellers

AddUnique = CVErr (2)

Avslutt funksjon

Slutt om

If Not dict.Exists (cval) Da

Legg til cval, cval

distinkte tall = distinkte tall + cval

Slutt om

Neste

AddUnique = distinkte tall

Sluttfunksjon

  • I celle C2 vil formelen være
  • = AddUnique (A2: A6)

  • For å kontrollere om koden ignorerer gjentatt verdi eller ikke; la oss endre verdien i celle A1 til 50 og se resultatet.

På denne måten kan vi legge til forskjellige positive verdier gjennom makrokode.

Last ned-prøvefil-xlsm

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave