webForumDet fria alternativet

Application.WorksheetFunction.SumIfs

Kontorsprogram

2 svar · 1 158 visningar · startad av samot79

Medlem sedan mars 200793 inlägg
Frågan#1

Hej,

Hur gör man för att använda sig av fler än ett villkor?

Total2 = Application.WorksheetFunction.SumIfs(Range("D2:D41"), Range("H2:H41"), "=3", "=4")

Denna rad fungerar ej, jag vill alltså att Cellerna D2:D41 skall summeras då värdet i H2:H41 är lika med 3 eller 4.

När jag använder ett argument, t ex "=3" fungerar raden perfekt.

Tacksam för hjälp.

Medlem sedan nov. 201253 inlägg
#2

SUMIFS används om man vill ha flera Tvingande villkor (=3 OCH =4). Och du måste ange villkorsområdet två gånger. Dvs något i stil med:
Total2 = Application.WorksheetFunction.SumIfs(Range("D2:D41"), Range("H2:H41"), "=3", Range("H2:H41"), "=4")
Men den är lite menlös utanför kvantfysiken eftersom t.ex H2 knappast kan vara både 3 och 4 samtidigt

Den här skulle kunna fungera, men då tar den alla tal emellan också:
Total2 = Application.WorksheetFunction.SumIfs(Range("D2:D41"), _
Range("H2:H41"), ">=3", Range("H2:H41"), "<=4")

Nej, det enklaste om du vill acceptera 3 ELLER 4 är att summerar 2 stycken SUMIF
dvs något i stil med
Total2 = Application.WorksheetFunction.SumIf(Range("H2:H41"), 3, Range("D2:D41")) _
+ Application.WorksheetFunction.SumIf(Range("H2:H41"), 4, Range("D2:D41"))

/Fan vad långrandig jag blir

Medlem sedan mars 200793 inlägg
#3

Inte kvantfysik jag jobbar med, och du får vara precis hur långrandig du vill :)

Jag inser felet som uppståd. Använde ditt sista förslag och det funkade alldeles utmärkt.

Stort tack för hjälpen!

267 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)