Avatar billede lasse666 Novice
21. december 2015 - 11:24 Der er 2 kommentarer og
1 løsning

Alternativ til INSTR + wildcard nummer

Hejsa,
jeg arbejder med celler, der indeholder forekomster af RD1xxxxx, RD2xxxxx og RD3xxxxx sammen med en masse andet tekst.

eksempelvis:
"Source docs RD161512, RD215623 and partially RD300651, transferred by xxx xxxx"

PT har jeg været nødt til at lave 3 INSTR sætninger for at finde positionen, og jeg kan herefter extracte værdien med MID, da jeg ved strengen altid er 8 lang
FindRD1 = InStr(1, CellToCheck, "RD1")
FindRD2 = InStr(FindRD1 +1, CellToCheck, "RD2")
FindRD3 = InStr(FindRD1 + FindRD2 +1, CellToCheck, "RD3")

Jeg ved at det tredje bogstav altid er tallet 1,2 eller 3, og det smarteste ville være, hvis jeg kunne lade det 3 bogstav være variablet.
For eksempel: FindRD# = InStr(1, CellToCheck, "RD#")

men INSTR virker ikke med variable numre, så det ser ud til, jeg har fat i den funktion. Nogen foreslag til, hvordan jeg ellers kan løse det?

På forhånd tak :)
Mvh
Lasse
Avatar billede supertekst Ekspert
21. december 2015 - 12:03 #1
Sub udtrækRD()
On Error Resume Next
Const pf = "RD"
Dim tabel As Variant
    tabel = Split(Range("A1"), "RD")        'A1 erstattes af variabel
   
    rd1 = pf & Left(tabel(1), 6)
    rd2 = pf & Left(tabel(2), 6)
    rd3 = pf & Left(tabel(3), 6)
End Sub
Avatar billede lasse666 Novice
19. februar 2016 - 10:57 #2
forsinket tak for svar :) Virkede ikke 100% som jeg gerne ville men det var en god workaround...

Det bedste ville være hvis den var uafhægig af hvor mange RDxxx der var i et form for loop.

Hvis du svarer på den her besked, så kan jeg give dig pointsene :)
Avatar billede supertekst Ekspert
19. februar 2016 - 11:12 #3
Ok - du får et svar..
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