Routine to restore drag from- and drop to- areas/cells?
May be you can use this to determine a drag/drop operation, as such an
operation fires 2 Worksheet_Change events then the Worksheet_SelectionChange
event.
However, I can't yet diferentiate the first Worksheet_Change event for the
drag/drop from normal entry. Depending what you need to do, this may not
matter.
You will have to Application.CellDragAndDrop = True for drag/drop to be
possible
Dim Cutting As Boolean
Dim DragDropPossible As Boolean
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Msg As String
With Application
Select Case .CutCopyMode
Case False
If Cutting Then
Msg = "Cut Paste"
Else
If DragDropPossible = True Then
Msg = "Drag & drop operation"
Else
Msg = "Normal Entry"
End If
End If
Case xlCopy
Msg = "Copy Paste"
Case xlCut
'Never this value in a _Change event.
'Need to check for it in _SelectionChange event
End Select
End With
MsgBox Msg
DragDropPossible = True
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cutting = (Application.CutCopyMode = xlCut)
DragDropPossible = False
End Sub
NickHK
"tskogstrom" wrote in message
oups.com...
Hi,
In the worksheet, I have cells of different formats - color,
validation, font etc and I wonder if there are any routines to restore
both cells - both the "drag from" area- and the "drop to"- area.
Maybe you can use Selection_change event to remember the "drag from"
area etc.?
I already have a subroutine what recieve the target areas from
Worksheet_change event and correct the areas (it take each cell and
check the row and column to know how the cell should be formated like,
even if I change more than one area). If I could send the two cell
areas effected in draganddrop, I could just use the same routine.
Earlier, I blocked the draganddrop with routines like:
Application.OnKey "^x"
Application.CommandBars("Edit").Controls(3).Enable d = True
Application.CellDragAndDrop = True
But CellDragAndDrop kill the content in the clipboard making the user
not to be able to paste betrween the sheets. Therefore, I try to find
another solutions.
Happy to any suggestions and if possible, code snippets ready to use
...:-)
Kind regards
tskogstrom
|