Choose which cell to paste data

M

Mik

Using VBA, I have copied the contents / comments / color etc.. of a
particular cell (single or merged), and wish to manually select (using
mouse pointer) which cell to paste the data.

So, I guess the VBA code should pause / stop until a new cell is
chosen and confirmed.
Is this posible?

My code so far is....

Private Sub CommandButton4_Click()
' MOVE data
Dim Answer As String
Dim MyNote As String
MyNote = "Move selected data?"
Answer = MsgBox(MyNote, vbQuestion + vbYesNo, "For Confirmation")
If Answer = vbNo Then
Exit Sub
End If
Selection.Copy
With ActiveCell
.Interior.ColorIndex = xlNone
.ClearContents
.ClearComments
.UnMerge
End With
MsgBox ("Please select new cell, where data will be copied to. ")

?????????????

ActiveSheet.Paste
End Sub

Thanks in advance.
Mik
 
G

Gary''s Student

Type:=8 will allow you to use the mouse:

Sub movem()
Dim r1 As Range, r2 As Range
Set r1 = Selection
Set r2 = Application.InputBox(prompt:="pick destination", Type:=8)
r1.Copy r2
End Sub
 
D

Don Guillett

Try this. Select the cell to copy>fire the macro>select the paste cell>macro
finishes job

Sub copytoselectionSAS()
Selection.Copy Application.InputBox(Prompt:= _
"Select your copy cell", Title:="SalesAid Software", Type:=8)
With ActiveCell
.Interior.ColorIndex = xlNone
.ClearContents
.ClearComments
.UnMerge
End With
 
M

Mik

Try this. Select the cell to copy>fire the macro>select the paste cell>macro
finishes job

Sub copytoselectionSAS()
Selection.Copy Application.InputBox(Prompt:= _
 "Select your copy cell", Title:="SalesAid Software", Type:=8)
 With ActiveCell
    .Interior.ColorIndex = xlNone
    .ClearContents
    .ClearComments
    .UnMerge
End With

--
Don Guillett
Microsoft MVP Excel
SalesAid Software









- Show quoted text -

Thank you both for your reply.....

The cells that are being copied / moved can sometimes have a border
along one of it's edges (left or right, depending on it's location).
When i run your code, the borders also copy across to the new
location.

I don't want this to happen.
I have tried utilising the 'PasteSpecial
Paste:=xlPasteAllExceptBorders' routine, but i get errors.
Possibly entering it wrong.

Can you please assist?

Thanks
Mik
 
D

Don Guillett

I am not exactly sure what you have and what you want. Is this one or more
cells to copy? Do the source cells have color,merging,comments. Do you want
to copy one or more cells with OUT these. Perhaps a sample file.
If desired, send your file to my address below. I will only look if:
1. You send a copy of this message on an inserted sheet
2. You give me the newsgroup and the subject line
3. You send a clear explanation of what you want
4. You send before/after examples and expected results.

--
Don Guillett
Microsoft MVP Excel
SalesAid Software
(e-mail address removed)
Try this. Select the cell to copy>fire the macro>select the paste
cell>macro
finishes job

Sub copytoselectionSAS()
Selection.Copy Application.InputBox(Prompt:= _
�"Select your copy cell", Title:="SalesAid Software", Type:=8)
�With ActiveCell
� � .Interior.ColorIndex = xlNone
� � .ClearContents
� � .ClearComments
� � .UnMerge
End With

--
Don Guillett
Microsoft MVP Excel
SalesAid Software









- Show quoted text -

Thank you both for your reply.....

The cells that are being copied / moved can sometimes have a border
along one of it's edges (left or right, depending on it's location).
When i run your code, the borders also copy across to the new
location.

I don't want this to happen.
I have tried utilising the 'PasteSpecial
Paste:=xlPasteAllExceptBorders' routine, but i get errors.
Possibly entering it wrong.

Can you please assist?

Thanks
Mik
 
M

Mike Fogleman

Your best method would be to remove the borders on the destination cell
after the paste. As Gary's Student had set the destination range to a
variable r2, you can use that variable to remove the borders..

Set r2 = Application.InputBox(prompt:="pick destination", Type:=8)
r1.Copy r2
r2.Borders.LineStyle = xlNone

Even if there are no borders to remove, this will not throw an error.

Mike F
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top