Solved

MSAccess - Scroll wheel in a Memo field on a form

Posted on 2008-06-25
4
1,795 Views
Last Modified: 2009-12-22
A user asked about the possibility of adding the capability to use the scroll wheel to scroll within a Memo field on a datasheet view/form view.

- On the Datasheet, the scroll wheel just scrolls thru the records.  I suppose I could disable the scroll wheel on the mouseover event of the memo field.

- On the form, scroll wheel does nothing in a Memo box.

I couldn't find a quick answer, but thought someone might have run into a similar request.

Any sugestions?

Thanks!

0
Comment
Question by:markp99
4 Comments
 
LVL 27

Accepted Solution

by:
jjafferr earned 500 total points
ID: 21866214
Access cannot turn off the mouse wheel control natively, you have to usea 3rd party tool like:
http://www.lebans.com/mousewheelonoff.htm

as far as scrolling through the memo field, I don't think it is possible,
but you can put the following code "On Double click" of the memo field:

    'zoom to see the rest of the data inside the textbox
    DoCmd.RunCommand acCmdZoomBox

this will open the memo field in a bigger window.

jaffer
0
 
LVL 4

Expert Comment

by:oldmanbim
ID: 22710130
Jaffer's right.

However, here is quick fix to this if you're not to particular about the "elegance" of your solution.  

You'll need to set the On Mouse Wheel event of your form to "[Event Procedure]"
Private Sub Form_MouseWheel(ByVal Page As Boolean, ByVal Count As Long)

    ' A multiplier for Count, which is how far to jump (jump = "scroll")

    ' A good estimate for this is 2x your text box width in inches

    Const DELTA As Integer = 8

    Dim NewPos As Long
 

    ' The tag "UseWheel" marks a control as scrollable

    If Screen.ActiveControl.Tag <> "UseWheel" Then Exit Sub
 

    ' Do the scroll

    With Screen.ActiveControl

        ' Make sure there is no selected text

        .SelLength = 0
 

        ' Get the new position

        NewPos = .SelStart + Count * DELTA
 

        ' Make sure it's not 0 and set SelStart

        If NewPos < 0 Then .SelStart = 0 Else .SelStart = NewPos
 

    End With
 

End Sub

Open in new window

0

Featured Post

Complete Microsoft Windows PC® & Mac Backup

Backup and recovery solutions to protect all your PCs & Mac– on-premises or in remote locations. Acronis backs up entire PC or Mac with patented reliable disk imaging technology and you will be able to restore workstations to a new, dissimilar hardware in minutes.

Join & Write a Comment

QuickBooks® has a great invoice interface that we were happy with for a while but that changed in 2001 through no fault of Intuit®. Our industry's unit names are dictated by RUS: the Rural Utilities Services division of USDA. Contracts contain un…
I originally created this report in Crystal Reports 2008 where there is an option to underlay sections. I initially came across the problem in Access Reports where I was unable to run my border lines down through the entire page as I was using the P…
In Microsoft Access, learn different ways of passing a string value within a string argument. Also learn what a “Type Mis-match” error is about.
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

746 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

12 Experts available now in Live!

Get 1:1 Help Now