Macro - Extracting a number from a string

Dear group, 

I got the String from PslSourceString.Description[1]. This string contains the resource ID from MFC application. How could I extract this number from this text? 

The containing numbers could have 1 to more than 5 digits. Also the text in front of the number is not the same[2]

 

[1] E. g. : Zeichenkette 15002 in String Table

 

[2] Examples: 

Screenshot of Trados Studio showing a list of strings with resource IDs and their corresponding locations such as 'Trennstrich in Menu 151' and 'Bearbeitungsfeld 37053 in Dialog 233'.



Generated Image Alt-Text
[edited by: Trados AI at 10:32 AM (GMT 0) on 4 Mar 2024]
emoji
Parents Reply Children
  • For standard resources in dialogs like the checkbox please use

        PslSourceString.ID

    In MFC StringTable resources that are internally organized in blocks with 16 entries you have to calculate the ID

        If PslSourceString.ResType = "StringTable" Then
            MsgBox "ID: " & ((PslSourceString.Resource.ID - 1) * 16 + PslSourceString.ID)
        End If

    It is true that PslSourceString.Resource.IDName is empty in binary MFC and other resources, but when parsing the RC file this will be set with the mnemonic name from the RC file. The allows you to have both the numerical ID and the mnemonic ID.