Avatar billede Laugesen1 Mester
29. juni 2016 - 01:51 Der er 1 kommentar og
1 løsning

Søg efter flere efterfølgende ord ved brug af array

Jeg har en makro der kopierer enkelte rækker ud fra ét kriterium i en kolonne. Rækkerne går over 5 kolonner. Til søgningen bruger jeg et array til at løbe rækkerne igennem, og det virker helt efter hensigten.
Der søges efter et enkelt kriterium i rækkernes 2. kolonne.
Hvis kriteriet Faktura er opfyldt, bliver rækken kopieret.

Men nu vil jeg gerne kunne udvide søgekriteriet til at omfatte de 4 første ord i den tekst der står i cellerne i 2. kolonne.
De 4 første ord der skal søges efter  -  Iflg. aftale fremsendes faktura. Derefter kommer der et flercifret tal (faktura nr.), som jo er forskelligt hver gang. Det flercifret tal skal ikke indgå i søgekriteriet.

Eksempel på tekst i en celle i 2. kolonne:
Iflg. aftale fremsendes faktura 987654321

Hvordan gør jeg det? Kan man på en eller anden måde omskrive makroen, så den kun søger efter de første 31 tegn, altså inkl. mellemrummene?
Eller er der en anden måde at gøre det på?
 
Uddrag af makroen som den fungerer nu:

    K = 1
    ReDim NewArray(1 To UBound(MyArray, 1), 1 To UBound(MyArray, 2))
    For x = LBound(MyArray, 1) To UBound(MyArray, 1)
                If MyArray(x, 2) = "Faktura" Then
            For y = LBound(MyArray, 2) To UBound(MyArray, 2)
                NewArray(K, y) = MyArray(x, y)
            Next
            K = K + 1
        End If
    Next
   
På forhånd tak
Finn Laugesen
Avatar billede Jessen Seniormester
01. juli 2016 - 08:39 #1
Hej,

Du kan bruge funktionen 'Mid'. Den tager et udsnit af en tekst baseret på en startplacering (her 1) og et antal tegn (her 31). Jeg kan ikke helt ud fra ovenstående gennemskue dit array, men det kan du selv rette til.

If Mid(MyArray(x, 2), 1, 31) = "Iflg. aftale fremsendes faktura" Then
Avatar billede Laugesen1 Mester
07. juli 2016 - 11:43 #2
Hej Jessen

Det virker helt perfekt, og det giver muligheder for nemt at justere søgningen på et senere tidspunkt.

Undskyld det sene svar.
Tak for hjælpen.

Hilsen Laugesen
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester