Personal website of Gregory K. Maxey, Commander USN (Retired)
Do you have ad-blocking software enabled? While I respect your right to do so, your donations and the minimal advertisements on this site help to defray internet and other costs of providing this content. Please consider excluding this website from blocking or turning off the blocker while browsing this site.
The information, illustrations and code contained in my "Microsoft Word Tips" are provided free and without risk or obligation.
However, the work is mine. If you use it for commercial purposes or benefit from my efforts through income earned or time saved then a donation, however small, will help to ensure the continued availability of this resource.
If you would like to donate, please use the appropriate donate button to access PayPal. Thank you!
This Microsoft Word Tips & Microsoft Word Help page provides a handy VBA tool to easily create a Google search string from selected text.
For example, let's use the snippet of text shown below.
Install then execute the following macro:
See: Installing Macros for instructions on how to set up and use the macros provided in this Microsoft Word Help & Microsoft Word Tips page.
Sub SrchGoogle() Dim pStr As String, pSrcText As String, pChar As String, URL As String Dim i As Long pStr = Selection.Text i = 1 For i = 1 To Len(pStr) pChar = Mid(pStr, i, 1) pSrcText = pSrcText + EncodeUTF8(pChar) Next i '%22 is needed at the begining and the end of the string, so Google searches on the whole string URL = "http://www.google.com/search?q=%22" & pSrcText & "%22" 'Note, if the length is more than 487, transmited url will be shorted. ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:= _ URL, ScreenTip:="Search this text with Google", _ TextToDisplay:=Selection.Text End Sub Public Function EncodeUTF8(ByVal pCar As String) As String Dim CarVal As Long Dim Sextet As Long Dim Quintet As Long Dim Sextet1 As Long Dim Sextet2 As Long Dim Quartet As Long CarVal = AscW(pCar) 'Ensure positive code point values If CarVal < 0 Then CarVal = CarVal + 65536 Select Case CarVal 'Case ASCII, 1 byte coding, 7 significant bits Case Is < 128 EncodeUTF8 = pCar 'Case 2 bytes coding, 8 to 11 significant bits (5 bits, then 6 bits) Case Is > 127, Is < 2048 Sextet = 128 + CarVal Mod 64 CarVal = CarVal \ 64 Quartet = 224 + CarVal EncodeUTF8 = "%" + Hex(Quartet) + "%" + Hex(Sextet1) + "%" + Hex(Sextet2) End Select End Function
The link is inserted at the selected text.
That's it! I hope you have found this tips page useful and informative.