• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

zescijferig getal uit tekst halen

Status
Niet open voor verdere reacties.

cortex

Gebruiker
Lid geworden
2 aug 2009
Berichten
102
Beste experts,

Ik probeer middels een formule een zescijferig getal uit een willekeurige tekst in een nieuwe kolom als resultaat weer te geven.
De teksten bestaan uit verschillende lengtes en de plaats van het zescijferig getal is willekeurig.
Zie voorbeeld. Denken jullie een formule te vinden, want een zoektocht heeft geen resultaat opgeleverd.
Ik gebruik Excel 2007.

Hartelijke groet,
Cortex
 

Bijlagen

  • Getal uit tekst halen.xlsx
    10,2 KB · Weergaven: 52
Zo ook goed?

of met een matrixformule:
PHP:
=DEEL(A2;MIN(ALS(ISGETAL(DEEL(A2;RIJ(INDIRECT("1:"&LENGTE(A2)));1)*1);RIJ(INDIRECT("1:"&LENGTE(A2)));""));6)

invoeren via Cntrl shft enter
 
Laatst bewerkt:
Met regular expressions, accepteer alleen als er precies 6 cijfers zijn, niet meer en niet minder.
Code:
Public Function ZesCijfers(strRegel As String) As Long
    With CreateObject("VBScript.RegExp")
        .Global = True
        .Pattern = "\b\d{6}\b"
        ZesCijfers = CLng(.Execute(strRegel)(0).Value)
    End With
End Function
 
Laatst bewerkt:
Opgelost

Zeer bedankt voor jullie creatieve oplossingen. Ik ben zeer geholpen.
Mooi weekend toegewenst!

Met vriendelijke groet,
Cortex
 
Onopgelost

Helaas te vroeg gejuicht:-(
Bijgesloten het juiste document. Per abuis het verkeerde bestand geupload.

Appeltje eitje voor jullie. Opdracht blijft het zelfde echter begint de zin altijd met B2B of B2C

Grtz,
Cortex
 

Bijlagen

  • Getal uit tekst halen.xlsx
    10,8 KB · Weergaven: 42
  • Getal uit tekst halen.xlsx
    10,3 KB · Weergaven: 39
De oplossing van Alphamax is daar perfect voor geschreven:
Code:
Public Function ZesCijfers(strRegel As String) As Long
    With CreateObject("VBScript.RegExp")
        .Global = True
        .Pattern = "\b\d{6}\b"
        ZesCijfers = CLng(.Execute(strRegel)(0).Value)
    End With
End Function
 
Kan het ook in een formule, ik ben niet zo thuis in macro's nl?
 
Ik denk het wel:
PHP:
=DEEL(A2;MIN(ALS(ISGETAL(DEEL(A2;RIJ(INDIRECT("1:"&LENGTE(A2)));6)*1);RIJ(INDIRECT("1:"&LENGTE(A2)));""));6)

Matrixformule ==> ctrl shft enter
 
Dat was hem. Zeer bedankt en erg tevreden bovendien. Mijn complimenten!

Grtz, Cortex
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan