Results 1 to 2 of 2

Thread: Extract only the first portion of bold text from text string
Thanks Thanks: 0 Likes Likes: 0

  1. #1
    New Member
    Join Date
    Oct 2018
    Posts
    13
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Default Extract only the first portion of bold text from text string

    While this is not being implemented within Excel, it does involve the use of strings similar to those used within Excel and I am hopeful someone can assist.

    I am working on trying to create a template letter that uses bookmarks to generate a UserForm and then selections on the UserForm are then used to update the template.

    The letter contains language associated with multiple different contracts (Contract 1, Contract 2, Contract 3, etc.) which each contain 15 to 25 different contractual terms.

    Within the UserForm you would select the Contract from a dropdown Combo Box and based on this selection the 15 to 25 different contractual terms would load as a selectable CheckBox. After selecting the CheckBoxes that you want to cite in the letter, you would click an OK button which would clear any terms that are not selected.

    The language and selections are different for each contract, and contain very specific language / format that need to be followed. The letter template would initially contain all of the contracts and based on the UserForm the contracts that are not selected are deleted followed by the terms that are not selected and achieved by creating bookmarks for each of the terms that will also be contained within a bookmark for the contract.

    The initial template text would be as follows:

    [ <Begin Bookmark Contract1><begin bookmark="" contract1="">
    Introduction text / message about the contract.

    <begin bookmark="" contract1term1=""><Begin Bookmark Contract1Term1>
    Term 1. Explanation of the term.
    <end bookmark="" contract1term1=""><End Bookmark Contract1Term1>

    <begin bookmark="" contract1term2=""><Begin Bookmark Contract1Term2>
    Term 2. Explanation of the term.
    <end bookmark="" contract1term2=""><End Bookmark Contract1Term2>

    <begin bookmark="" contract1term3=""><Begin Bookmark Contract1Term3>
    Term 3. Explanation of the term.:
    Explanation of the term.
    Explanation of the term.
    Explanation of the term.
    <end bookmark="" contract1term3=""><End Bookmark Contract1Term3>

    <End Bookmark Contract1>
    <end bookmark="" contract1="">]

    [
    <begin bookmark="" contract2=""><Begin Bookmark Contract2>
    Introduction text / message about the contract.

    <begin bookmark="" contract2term1=""><Begin Bookmark Contract2Term1>
    1. Name of term1
    a. Part A Explanation of the term:
    (1) Explanation of the term;
    (2) Explanation of the term;
    b. Part B Explanation of the term.
    <end bookmark="" contract2term1=""><End Bookmark Contract2Term1>

    <begin bookmark="" contract2term2=""><Begin Bookmark Contract2Term2>
    2. Name of term2
    a. Part A Explanation of the term:
    (1) Explanation of the term;
    (2) Explanation of the term;
    b. Part B Explanation of the term.
    <end bookmark="" contract2term2=""><End Bookmark Contract2Term2>

    <End Bookmark Contract2>
    <end bookmark="" contract2="">]

    UserForm / Script:
    On the UserForm I have 25 CheckBox’s listed and I would like the caption to be updated to reflect a portion of the term. I have been able to script this to obtain the text to the left of the first period, however on some of the contracts the term starts with a number then a period followed by the term text. Ideally I would like to extract only the first portion of the string that appears in Bold without extracting any other portions of the string that may also appear in Bold.

    I would then like to pass the remainder of the string to the ControlTipText field so the text can be seen during a mouse over of the text box.

    I also want to pass the string source (Name of the bookmark) to the Checkbox Tag so I can use it to later reference the Bookmark name to determine which book marks to keep and which to delete.

    Any suggestions on how to change the below code to extract only the first portion of the bold text from each bookmark in the below script to pass it to the caption?

    Code:
    Private Sub CommandButton8_Click()
        Dim bmk As Bookmark
        Dim i As Long
        Dim P As String
        Dim CovOutput As String
        Dim msg As String
    
    
            i = 1
            For Each bmk In ActiveDocument.Bookmarks("Contract1").Range.Bookmarks
                
                CovOutput = bmk.Name
                P = i
                
                Controls("CheckBox" & P).Tag = bmk.Name 'Set Tag equal to the bookmark name - Extract Tag to determine which to remove on false statement.
                Controls("CheckBox" & P).Caption = Left(ActiveDocument.Bookmarks(CovOutput).Range.Text, InStr(ActiveDocument.Bookmarks(CovOutput).Range.Text, ".")) 'Text Prior to 1st Period
                Controls("CheckBox" & P).ControlTipText = Mid(ActiveDocument.Bookmarks(CovOutput).Range.Text, (InStr(ActiveDocument.Bookmarks(CovOutput).Range.Text, ".") + 1))
                    msg = msg & bmk.Name & vbCr
                i = (i + 1)
                On Error GoTo ErrorStop
            Next bmk
    
    
    ErrorStop:
        
        'Uncomment for Debug
        MsgBox msg
    
    
    End Sub
    Thank you in advance,
    John</end></end></begin></end></begin></begin></end></end></begin></end></begin></end></begin></begin>
    Last edited by one4youman; Apr 15th, 2019 at 11:43 AM.

  2. #2
    Moderator Macropod's Avatar
    Join Date
    Aug 2007
    Location
    Canberra, Australia
    Posts
    3,274
    Post Thanks / Like
    Mentioned
    6 Post(s)
    Tagged
    1 Thread(s)

    Default Re: Extract only the first portion of bold text from text string

    You have already been given extensive help on this at: http://www.msofficeforums.com/word-v...xt-string.html
    Kindly read Mr Excel's policy on Cross-Posting in rule 13: http://www.mrexcel.com/forum/board-a...rum-rules.html
    Cheers
    Paul Edstein
    [MS MVP - Word]

Some videos you may like

User Tag List

Tags for this Thread

Like this thread? Share it with others

Like this thread? Share it with others

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •