Om du undrar hur du bara kan lägga till positiva och unika värden så är den här artikeln något för dig.
I den här artikeln lär du dig att lägga till endast distinkta positiva värden i excel med VBA -kod.
Fråga): Jag vill att ett makro summerar alla distinkta positiva tal i ett specifikt intervall som innehåller negativa och positiva tal.
Följande är ögonblicksbilden av data vi har:
Vi måste följa stegen nedan:
- Klicka på fliken Utvecklare
- Välj Visual Basic i kodgruppen
Ange följande kod i standardmodulen:-
Funktion AddUnique (ByRef inmatningsområde som intervall, _
Valfritt IgnoreText som booleskt = sant, _
Valfritt IgnoreError As Boolean = True, _
Valfritt Ignorera Negativenumbers As Boolean = True)
Dimma olika nummer som dubbel
Dim cell As Range
Dim dict Som objekt
Set dict = CreateObject ("Scripting.dictionary")
distinkta nummer = 0
För varje cell I inputrange.Resize (inputrange.Rows.Count, 1)
cval = cell.Värde
Om IgnoreText Då
Om inte (VBA.IsNumeric (cval)) Då cval = 0
Annan
AddUnique = CVErr (0)
Avsluta funktion
Avsluta om
Om IgnoreError Då
Om IsError (cval) Då är cval = 0
Annan
AddUnique = CVErr (1)
Avsluta funktion
Avsluta om
Om IgnoreNegativenumbers Then
Om cval <0 Då cval = 0
Annan
AddUnique = CVErr (2)
Avsluta funktion
Avsluta om
If Not dict.Exists (cval) Då
lägg till cval, cval
distinkta nummer = distinkta nummer + cval
Avsluta om
Nästa
AddUnique = distinkta nummer
Avsluta funktion
- I cell C2 skulle formeln vara
- = AddUnique (A2: A6)
- För att kontrollera om koden ignorerar upprepat värde eller inte; låt oss ändra värdet i cell A1 till 50 och se resultatet.
På detta sätt kan vi lägga till distinkta positiva värden genom makrokod.
Ladda ner-Exempelfil-xlsm