2016-12-06 8 views
0

Excelにマクロがありますが、Selection.PasteSpecialを使用して貼り付けようとするとエラー1004が表示されます。vb excel error 1004 Selection.PasteSpecial

このエラーは、Office 2010で同じマクロを試すとOffice 365で正常に動作します。

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ 
     :=False, Transpose:=False 

モジュールの完全なコードは次のとおりです:

Sub MoveData_Activations() 

MoveData_Activations Macro 

    Dim dayCount As Integer 
    Dim startCell As String 
    Dim curCellRef As String 

    dayCount = 13 
    startCell = "B3" 

    If MsgBox("Are you sure you want to rollover the data for a new date?", vbYesNo, "Confirm rollover") = vbYes Then 
     ActiveSheet.Protect UserInterfaceOnly:=True 
     Range(startCell).Select 
     ActiveCell.Cells(-1, 6).Copy 
     ActiveCell.Cells(-1, 1).Select 
     Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ 
      :=False, Transpose:=False 

     curCellRef = Range(startCell).Address 
     For i = 1 To dayCount 
      CopyData curCellRef, False, 6, 24, 2 
      curCellRef = ActiveCell.Cells(1, 6).Address 
     Next i 
     CopyData curCellRef, True, 6, 24, 2 
    End If 
End Sub 
+0

わからないが、読み:

Range(startCell).Select ActiveCell.Cells(-1, 6).Copy ActiveCell.Cells(-1, 1).Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False 

へ: から
:略して は、これらの行を変更します/ 10714251/how-to-avoid-use-select-in-excel-vba-macros)を使用してください。 – Kyle

答えて

0

それは常に時間クリップボードに内容をコピー消費している、それがあることかもしれ

デバッガは、この行でエラーを示していいずれかが別のプログラムで使用されているため、エラーまたはメモリが何らかの形で混乱してしまいます。 http://stackoverflow.com/questions([この]を

Range(startCell).Offset(-1, 6).Copy destination:=Range(startCell).Offset(-1, 1) 

Hint: Avoid selection

関連する問題