View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
Graham[_4_] Graham[_4_] is offline
external usenet poster
 
Posts: 2
Default listbox scrolling with mouse Problem Solved

I now have a fuller understanding of the problem and have come up wit a
clean solution.

For those interested:

The problem was that behind each listbox click event there was code that
(needlessly) refilled the listbox itself. Eliminating this code solved the
problem.

The problem resulted from the fact that the Workbook_SheetSelectionChange
event can be caused to fire not only by a user making a selection on the
current sheet, but also by the process of a new sheet activating where that
sheet has a different selection to the previously active sheet.
My small application helps my college to book rooms. It is customised for
the rooms at my college but could be modified with not too much trouble. It
is free for all to use and modify.
http://wn.com.au/alexj/Excel/RoomBooking.xls



Thank you Doug & Robin for your assistance.



Graham


"Graham" wrote in message
...
I have a listbox in excel 2002 that is loaded with the names of all the
sheets in the workbook to allow the user tp navigate quickly from sheet to
sheet. Dragging the mouse over each entry in the listbox works well. The
code to activate each sheet is in the Click event for the listbox.

Problem: when I added code to the listbox click event to preserve the
selected cells area of the first listbox, the list box no longer reliably
responds to dragging the mouse over it.

The Code:

Private Sub lstFreeRooms_Click()

' show the sheet clicked on and
' preserve the current selection

Dim currentSelectionAddress As String

currentSelectionAddress = Selection.Address

' activate the sheet selected in the listbox

Dim sheetname As String

sheetname = Me.lstFreeRooms.Value
Sheets(sheetname).Activate

' restore the current selection
ActiveSheet.Range(currentSelectionAddress).Select

End Sub

-------------------------------------------------

I have tried many work arounds. The only one that is somewhat satisfactory
is to put the code to preserve the current selection into the mouse down

and
mouse up events.

Thanks for any assistance.