Solved

How to use the mouse move event in cells to read the comments in the cells

Posted on 2016-11-02
23
56 Views
Last Modified: 2016-11-12
I have an Image control in my my excel worksheet.
I load pictures into the image ActiveX in the worksheet and add comments to a array of cells A4:D5.
Whenever the workbook is closed and opened the last picture loaded in the image control and the previous riddles (comments) appear, but i don't want it to be so.

When the worksheet is opened the riddles must appear only after the start button is pressed (The previous comments must be cleared when the worksheet is opened)

and

the pictures must load only after the user enters the answer and clicks the submit button.


I have been trying to work on  a mouse move even that will read the comments when the user moves the mouse over the cell to reveal the comment.

below is what i put down but i don't know how to connect it with the comments for them to be read.


Private Sub Cells_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)


Application.Speech.Speak "" & Selection.Comment.Text & "", True


End Sub

Open in new window

0
Comment
Question by:joseph narh padi
  • 12
  • 10
23 Comments
 
LVL 45

Expert Comment

by:Martin Liss
ID: 41870564
Can you attach your workbook, or a sample workbook?
0
 

Author Comment

by:joseph narh padi
ID: 41871233
Here is the file attached.
0
 
LVL 45

Expert Comment

by:Martin Liss
ID: 41871240
You forgot to attach the file.
0
 

Author Comment

by:joseph narh padi
ID: 41871244
0
 
LVL 45

Expert Comment

by:Martin Liss
ID: 41871314
What object is the Cells_MouseMove attached to?
0
 
LVL 45

Expert Comment

by:Martin Liss
ID: 41871318
There is no MouseMove event for cells on a sheet but you can add this to the sheet's code.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.Speech.Speak ActiveCell.Comment.Text & "", True
End Sub

Open in new window

0
 

Author Comment

by:joseph narh padi
ID: 41871392
It is how to attach that mouse move to the cell that i do not know
0
 

Author Comment

by:joseph narh padi
ID: 41871399
I added but it hasn't read it
0
 
LVL 45

Expert Comment

by:Martin Liss
ID: 41871416
It is how to attach that mouse move to the cell that i do not know
That's not possible. There is no way to respond to a mouse move anyplace on a worksheet.
I added but it hasn't read it
Click any cell that has a comment in the attached workbook
28980423.xlsm
0
 

Author Comment

by:joseph narh padi
ID: 41871628
Thanks very much.
When i opened the workbook and clicked the cells, it read very well, but when i tried restarting the riddle, I had an error.
It reads

Object variable Or With block variable not set
The statement
Application.Speech.Speak ActiveCell.Comment.Text & "", True

Open in new window

is highlighted
0
 

Author Comment

by:joseph narh padi
ID: 41871629
Would you please look at the other issues for me?

I have an Image control in my my excel worksheet.
I load pictures into the image ActiveX in the worksheet and add comments to a array of cells A4:D5.
Whenever the workbook is closed and opened the last picture loaded in the image control and the previous riddles (comments) appear, but i don't want it to be so.

When the worksheet is opened the riddles must appear only after the start button is pressed (The previous comments must be cleared when the worksheet is opened)

and

the pictures must load only after the user enters the answer and clicks the submit button.
0
Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

 
LVL 45

Expert Comment

by:Martin Liss
ID: 41872482
To correct the error, change
Application.Speech.Speak ActiveCell.Comment.Text & "", True

Open in new window

to
Dim c As Comment
Set c = ActiveCell.Comment 
If Not c Is Nothing Then
    Application.Speech.Speak ActiveCell.Comment.Text & "", True
End If

Open in new window


For the other issues, please close this question and ask a new one. Thanks.
1
 

Author Comment

by:joseph narh padi
ID: 41872498
Thanks. I'll give you feedback
0
 

Author Comment

by:joseph narh padi
ID: 41872937
Very good, It's working well, but we need to find a way of stopping the reading of one cell as soon as another cell is selected.
What happens is that when the programme assigns the comments to the cells, it highlights each cell in turn.
The programme also reads all the comments assigned one after the other long after they have been assigned.
If the first one will be stopped when the second cell is selected,  then only the comments in the last cell will be read.
The user will be spared the long waiting for all the comments to be read.
Thanks very much for your support.
0
 
LVL 45

Accepted Solution

by:
Martin Liss earned 500 total points (awarded by participants)
ID: 41872974
Change line 4 above to

Application.Speech.Speak ActiveCell.Comment.Text, True, , True

Here is a link to the Speech method.
0
 

Author Comment

by:joseph narh padi
ID: 41873192
WOW!!!!!!!!!!!!!!!!!! It works very well!!!!!!!!!!!!
Thanks very much. God bless you.
0
 
LVL 45

Expert Comment

by:Martin Liss
ID: 41873194
You're welcome and I'm glad I was able to help.

If you expand the “Full Biography” section of my profile you'll find links to some articles I've written that may interest you.

Marty - Microsoft MVP 2009 to 2016
              Experts Exchange MVE 2015
              Experts Exchange Top Expert Visual Basic Classic 2012 to 2015
0
 

Author Comment

by:joseph narh padi
ID: 41873198
I wrote

Application.Speech.Speak ActiveCell.Comment.Text "", True, False, True

Open in new window

0
 
LVL 45

Expert Comment

by:Martin Liss
ID: 41873203
What does the " " do for you?
0
 

Author Comment

by:joseph narh padi
ID: 41873218
I've omitted something in it.
It is actually
Application.Speech.Speak ActiveCell.Comment.Text & "", True, False, True

Open in new window


When I first wrote the method

Application.Speech.Speak ActiveCell.Comment.Text, True 

Open in new window


it was not recognised and was giving an error (highlighted red)  until i added the  (& "")
0
 
LVL 45

Expert Comment

by:Martin Liss
ID: 41873230
I don't understand but all that adding the " " does is to add a space at the end of the comment and since we are talking about speech, I don't think you need it.
0
 

Author Comment

by:joseph narh padi
ID: 41873237
thanks.
0

Featured Post

6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

Join & Write a Comment

How to quickly and accurately populate Word documents with Excel data, charts and images (including Automated Bookmark generation) David Miller (dlmille) Synopsis In this article you’ll learn how to use ExcelToWord! to copy data,charts, shapes …
This code takes an Excel list of URL’s and adds a header titled “URL List”. It then searches through all URL’s in column “A”, looking for duplicates. When a duplicate is found, it is moved to the top of the list. The duplicate URL’s are then highlig…
Viewers will learn the basics of slicers and timelines for both PivotTables and standard Excel tables in Excel 2013.
Excel styles will make formatting consistent and let you apply and change formatting faster. In this tutorial, you'll learn how to use Excel's built-in styles, how to modify styles, and how to create your own. You'll also learn how to use your custo…

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now