Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Is there a way to run a macro after pasting information into a cell?
For example excel lets you run things when you open the workbook: Private Sub Workbook_Open() End Sub Is there one for paste as well? |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Paste trigs the Worksheet_change event, but it can't tell whether you pasted
or wrote something into the cell. Unless you copy-paste a range of multiple cells, then she knows that multiple cells changed at once. HTH. Best wishes Harald "RigasMinho" skrev i melding ups.com... Is there a way to run a macro after pasting information into a cell? For example excel lets you run things when you open the workbook: Private Sub Workbook_Open() End Sub Is there one for paste as well? |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Harald,
Not exhaustively tested, but seems if you check the .CutCopyMode in this event, you can detect a Paste as opposed normal entry. Private Sub Worksheet_Change(ByVal Target As Range) MsgBox IIf(Application.CutCopyMode = xlCopy, "Pasted", "Normal Entry") End Sub NickHK "Harald Staff" wrote in message ... Paste trigs the Worksheet_change event, but it can't tell whether you pasted or wrote something into the cell. Unless you copy-paste a range of multiple cells, then she knows that multiple cells changed at once. HTH. Best wishes Harald "RigasMinho" skrev i melding ups.com... Is there a way to run a macro after pasting information into a cell? For example excel lets you run things when you open the workbook: Private Sub Workbook_Open() End Sub Is there one for paste as well? |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi Nick
It seem to work well for copy-paste, but not for cut-paste, which counts as two normal entries in a serie. Neat idea though. Best wishes Harald "NickHK" skrev i melding ... Harald, Not exhaustively tested, but seems if you check the .CutCopyMode in this event, you can detect a Paste as opposed normal entry. Private Sub Worksheet_Change(ByVal Target As Range) MsgBox IIf(Application.CutCopyMode = xlCopy, "Pasted", "Normal Entry") End Sub NickHK "Harald Staff" wrote in message ... Paste trigs the Worksheet_change event, but it can't tell whether you pasted or wrote something into the cell. Unless you copy-paste a range of multiple cells, then she knows that multiple cells changed at once. HTH. Best wishes Harald "RigasMinho" skrev i melding ups.com... Is there a way to run a macro after pasting information into a cell? For example excel lets you run things when you open the workbook: Private Sub Workbook_Open() End Sub Is there one for paste as well? |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Harold,
After actually reading the help and seeing there are actually 3 values for CutCopyMode, I thought would work: Private Sub Worksheet_Change(ByVal Target As Range) Dim Msg As String Select Case Application.CutCopyMode Case False Msg = "Normal Entry" Case xlCopy Msg = "Pasted Copy" Case xlCut Msg = "Pasted Cut" End Select MsgBox Msg End Sub But xlCut is never fired and actually caused this event to fire twice. That I could understand if there was a Cut (1 _Change) and a Paste (2 _Change), but you are never (apparently) in CutCopyMode=xlCut for either operation, both times =False. Seems a bit weird. NickHK "Harald Staff" wrote in message ... Hi Nick It seem to work well for copy-paste, but not for cut-paste, which counts as two normal entries in a serie. Neat idea though. Best wishes Harald "NickHK" skrev i melding ... Harald, Not exhaustively tested, but seems if you check the .CutCopyMode in this event, you can detect a Paste as opposed normal entry. Private Sub Worksheet_Change(ByVal Target As Range) MsgBox IIf(Application.CutCopyMode = xlCopy, "Pasted", "Normal Entry") End Sub NickHK "Harald Staff" wrote in message ... Paste trigs the Worksheet_change event, but it can't tell whether you pasted or wrote something into the cell. Unless you copy-paste a range of multiple cells, then she knows that multiple cells changed at once. HTH. Best wishes Harald "RigasMinho" skrev i melding ups.com... Is there a way to run a macro after pasting information into a cell? For example excel lets you run things when you open the workbook: Private Sub Workbook_Open() End Sub Is there one for paste as well? |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Weird indeed. Looks like something the programmers abandoned before it was
finished. To be useful, it would also need a fourth value; drag-drop of cells or ranges. Best wishes Harald "NickHK" skrev i melding ... Harold, After actually reading the help and seeing there are actually 3 values for CutCopyMode, I thought would work: Private Sub Worksheet_Change(ByVal Target As Range) Dim Msg As String Select Case Application.CutCopyMode Case False Msg = "Normal Entry" Case xlCopy Msg = "Pasted Copy" Case xlCut Msg = "Pasted Cut" End Select MsgBox Msg End Sub But xlCut is never fired and actually caused this event to fire twice. That I could understand if there was a Cut (1 _Change) and a Paste (2 _Change), but you are never (apparently) in CutCopyMode=xlCut for either operation, both times =False. Seems a bit weird. NickHK |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
copy multiple worksheets of a workbook, and paste onto a Word document ( either create new doc file or paste onto an existing file.) I need this done by VBA, Excel Macro | Excel Programming | |||
Copy and Paste macro needs to paste to a changing cell reference | Excel Programming | |||
Cut and Paste using Macro gives paste special method error | Excel Programming | |||
Macro to Paste to specific line, and continue to Paste each time on next row not over | Excel Programming | |||
Macro to Copy/Paste then Paste to Next Line | Excel Programming |