Avatar billede Anne Novice
18. december 2018 - 12:29 Der er 7 kommentarer

Excel formel som finder tekst i celle og matcher med range

Hej,

Jeg har table, med en kolonne, som indeholder tekst separeret med semikolonner.
Jeg har brug for en formel, som søger efter tekst i cellen, som matcher data i et range og returnerer data .

altså i tabellen har jeg følgende kolonner:
data: text; text; 3.1
number:
description:

I mit range har jeg to kolonner:
number (som indeholder numbers stored as text): 3.1
description: noget tekst

Jeg har brug for en formel, som finder 'number' i kolonnen 'data', skriver det i kolonnen 'number' og derefter finder den tilhørende 'description' i mit range.

Hvordan gør jeg det?
Avatar billede kim1a Ekspert
18. december 2018 - 13:17 #1
Ligger dit 'number' altid som bagerste del af den tekst med semikolon? Eller kan det f.eks. være:
text; text; 3.1; text
text; 3.1; text; text
etc?
Avatar billede Anne Novice
18. december 2018 - 15:31 #2
Numrene kan stå forskellige steder i cellen, så ikke nødvendigvis til sidst.
Avatar billede kim1a Ekspert
18. december 2018 - 16:00 #3
Uf, det lyder ikke nemt at løse. Har du en liste med hvad det kan være der står, så man kunne søge efter disse "text-strenge"?
Avatar billede Anne Novice
18. december 2018 - 16:58 #4
Ja, listen af numbers står i mit range.
Avatar billede kim1a Ekspert
18. december 2018 - 17:46 #5
Så tænker jeg at man kan lave en vba som søger efter disse tekststrenge, kan flere af dem stå i samme felt?

Jeg er nok ikke den skarpeste til at bygge noget i den stil, har du selv erfaring med vba?

Jeg tænker:
Loop i loop, hvor man tager første tekststreng,se om den er i linje 1, derefter 2 indtil sidste linje i din table, finder den så returner cellen efter tekststrengen (så du ikke behøver din "mellemkolonne"), derefter kører samme løsning i efter næste tekststreng.

Det kan dog være nogen ser en fordel i at køre omvendt alt efter hvor lange din table og range er.
Avatar billede xl-Enthusiast Ekspert
18. december 2018 - 19:28 #6
Sandsynligheden for at få brugbar hjælp ville nok være større, hvis du uploadede en fil til Dropbox, med en række eksempler på, hvad du har, og hvad du ønsker.
Avatar billede Jan Hansen Ekspert
19. december 2018 - 00:13 #7
denne brugerdefinerede funktion tror jeg kan hjælpe!!

den kopieres til et modul og du kan i en hjælpe kolonne skrive =FindNummer(A1)


Function FindNummer(Value As String) As String
    Dim MyArray() As String, iCount As Integer
    MyArray = Split(Value, ";")
    For iCount = 0 To UBound(MyArray)
        If IsNumeric(MyArray(iCount)) Then FindNummer = MyArray(iCount)
    Next
End Function


Jan
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