Excel Funktion – Tæl mellemrum

Dette er en ikke færdig testside


Specifikationer

Sprog: VBA – Visual Basis Application
Anvendelse: Excel – VBA modul


Kode

Lige til at kopiere ind i et vba modul. Vil du se hvordan du gør det, så kig på vores guide >>her<<.

Private Function Tælmellemrum(a As Range, b As Double) As Integer

Dim placering As Long
Dim taeller As Long

'variable oversigt
' a er den celle som funktionen kigger på.
' b er en værdi. Skriver man to i værdien, så kigges der efter det 2. mellemrum.
' retursvaret givet i form af et tal - eller en fejl.

If a = "" Then
       Tælmellemrum = Error
       Exit Function
End If

For placering = 1 To Len(a)
       If Mid(a, placering, 1) = " " then
              taeller = taeller + 1

              If taeller = b Then
                   Tælmellemrum = placering 
                   Exit Function
              End If

        End If
Next

Tælmellemrum = Error

End Function


Funktion regnearket

=Tælmellemrum(parameter1;paramter2)

paramter1 = cellen du vil undersøge

paramter2 = placering i tekststrengen. Vil du kigge efter det andet mellemrum i cellen, skal der stå 2. Hvis det er det tredje mellemrum, så skal der stå 3., skal der stå 3.


Forklaring

Funktionen kigger efter mellemrum. Normalt hvis du i en celle vil hive det 2. mellemrum ud af en tekst (kaldet en tekst-streng), vil du sprede søgningen ud over flere felter.


Og resultatet vil da blive

Altså det 2 mellemrum, ligger på den 11 plads i tekststrengen.

Med ovenstående formel vil du kunne sætte den direkte ind i regnearket og få svaret 11.


Forbedringsforslag

Der er forskellige muligheder for at forbedre funktionen.

  • En af dem kunne være at bygge en parameter mere på, så den kiggede efter andet end mellemrum.En yderligere udviklingsmulighed i dette eksempel kunne være at man kunne styre om den skulle være case sensitiv, altså om den kan skelne mellem store og små bogstaver – eller blot skal fortælle om placeringen på et “a”, uanset om det er et stort A eller lille a.

Hvis du har nogle ideer til hvad denne funktion også skal kunne eller har behov for noget tilsvarende, så tøv ikke med at kontakte