View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
Tom Ogilvy Tom Ogilvy is offline
external usenet poster
 
Posts: 27,285
Default Select a word in an cell

Since he says he is building a Thesaurus, I believe he wants the user to
select a sentence in a cell, then somehow fire his thesaurus addin which
will find equivalent words to the selected word. So he wants to discover
what word in a cell is selected. Kind the opposite of what you are
offering.

--
Regards,
Tom Ogilvy


"NickHK" wrote in message
...
Only if A1 is selected.
And it does not return the selected word; it selects the word in A1 if it
is
present in the ActiveCell.

NickHK

"Westman" wrote in message
...
Hi Nick,

Thanks again for the codes. FYI, i'm using VSTO2005 SE. So, I have to

modify
the codes first before it can be used. By the way, from your code, isn't

the
argument ActiveCell and Range("A1").Value) will have the same value? If

yes,
when do the codes return just the selected word?

Regards,
Westman


"NickHK" wrote:

Make it in a sub and pass the requirements as arguments.
e.g.
Private Sub CommandButton1_Click()
Call HiLiteWord(ActiveCell, Range("A1").Value)
End Sub

Private Sub HiLiteWord(argRange As Range, argWord As String)
Dim StartPos As Long

With argRange
StartPos = InStr(1, .Value, argWord)

If StartPos = 0 Then
MsgBox Chr(34) & argWord & Chr(34) & " was not found in cell "
&
argRange.Address
Exit Sub
End If

.Select
SendKeys "{F2}"
SendKeys "{LEFT " & Len(.Value) - StartPos + 1 & "}"
SendKeys "+{RIGHT " & Len(argWord) & "}"
End With

End Sub

NickHK

"Westman" wrote in message
...
Hi NIck,

Thanks for your reply. The codes work like a charm. But I think it is
useful
only when you know what word to find or grab, is it? Right now I'm
developing
a thesaurus for excel and (supposedly) it can find synonym(s) for any

word
that I have selected. In your codes, you have define which word
should

be
search for. And I dont have any clue how to modified those code to

make it
get any word at any cell in Excel.

Westman

"NickHK" wrote:

AFAIK, the only way in VBA is with SendKeys:

Private Sub CommandButton1_Click()
Dim StartPos As Long

Const WordToHiLite As String = "eat"
Const RangeToSearch As String = "B6"

With Range(RangeToSearch)
StartPos = InStr(1, .Value, WordToHiLite)

If StartPos = 0 Then Exit Sub

.Select
SendKeys "{F2}"
SendKeys "{LEFT " & Len(.Value) - StartPos + 1 & "}"
SendKeys "+{RIGHT " & Len(WordToHiLite) & "}"
End With

End Sub

NickHK

"Westman" wrote in message
...
Hi,

I'm facing a problem in developing my excell addin. How do I

select
just
one
word from a sentences in a single cell? For example:-

I like to eat fried chicken. -- This sentence is in a cell.

Right now, I just want to select word "eat" from the above

sentence.
Is
this
posible? If posible, how do I accomplish that?

Regards,
Westman