19. oktober 2008 - 16:15Der er
3 kommentarer og 1 løsning
Optimer min tælv.hvis kode
Hej.
Jeg har flere tabeller som jeg filtrerer vha. nogle filtre. Herefter ønsker jeg at tælle antallet af rækker, hvor et kriterie er opfyldt, fx at værdien i kollonne C = KPI.
Jeg kan ikke bruge en tæl.hvis funktion, da den også tæller de skjulte celler (dem jeg har filtreret fra), og tælv.hvis funktion findes ikke.
Derfor har jeg lavet min egen tælv.hvis, men den synes bare ganske langsom, og langt langsommere end fx tæl.hvis.
Håber I har nogle ideér til at gøre den hurtigere
Function TÆLVHVIS(Myrange As Range, Mykriterie As Variant) As Integer
Dim c As Range For Each c In Myrange row = c.row 'anvender jeg bare for at følge med If (c.Value = Mykriterie) And (c.EntireRow.Hidden = False) Then TÆLVHVIS = TÆLVHVIS + 1 End If Next c
End Function
Pointene går til den, som får koden til at virke bedst alias hurtigst, eller til den som løser problemet på en anden og bedre måde.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Der kan nok ikke speedes meget op på den, men lidt, det hjælper at kun teste på en ting ad gangen. Hvis rækken er skjult, behøves der ikke at tjekke på kriterie.
Function TÆLVHVIS(Myrange As Range, Mykriterie As Variant) As Integer Dim C As Range For Each C In Myrange ' Row = C.Row 'anvender jeg bare for at følge med If C.EntireRow.Hidden = False Then If C = Mykriterie Then TÆLVHVIS = TÆLVHVIS + 1 End If End If Next C
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.