Playing around with BuildingBlock Entries in a Template and hitting a pot hole here.

I've saved a couple entries to a Templates Building Block, Custom 1 Gallery under a new Category: "Email". These are nicely formatted paragraphs that I want to use as the Body in an Outlook email message.

First thing I hit was having trouble returning the BuildingBlockEntry to a string variable in VBA. All I could get was the first 255 characters of the entry with code like this:
[VBA]strBody = ActiveDocument.AttachedTemplate.BuildingBlockEntries("Contract Email").value[/VBA]

So, I then resorted to embedding a BuildingBlock Gallery Content Control in the Template to which I could insert the desired BuildingBlockEntry. Then I would grab that CC's range into my vba string variable. Example:

[VBA]'Retrieve the Boilerplate from the Template's Building Blocks
ActiveDocument.AttachedTemplate.BuildingBlockEntries("Contract Email").Insert where:=ActiveDocument.SelectContentControlsByTag("email").Item(1).Range, RichText:=True
strBody = ActiveDocument.SelectContentControlsByTag("email").Item(1).Range.Text
ActiveDocument.SelectContentControlsByTag("email").Item(1).Range.Delete[/VBA]

This succeeded in populating my string variable with the full length of buildingblock entry, which I then put into an email message. However, some of the formatting gets lost in the email's body. In particular, some hyperlinks appear as plain text in the email body, whereas when inserted in the document they appear nicely as blue underlined text as you'd expect.

I've tried different bodyformat settings in the outlook message to no avail.

Am I losing the formatting when I extract it from the content control as range.text?

Is there a way to return the full entry to a string variable without having tot first insert it into a document?