Excel VBA粘贴从activecell到合并单元格的偏移量

Excel VBA粘贴从activecell到合并单元格的偏移量,excel,vba,Excel,Vba,我正在将值从一个工作表复制粘贴到另一个工作表。问题是,我有两个合并的单元格,我想在其中输入数据,它们是D:E。来自B67的相同数据进入位于偏移(-1,-1)和偏移(-24,0) 我的代码: Private Sub CommandButton2_Click() 'Paste to a Defined Range ThisWorkbook.Sheets("Other Data").Range("L67").Copy 'Offset Paste (offsets 2 cells down and

我正在将值从一个工作表复制粘贴到另一个工作表。问题是,我有两个合并的单元格,我想在其中输入数据,它们是D:E。来自B67的相同数据进入位于
偏移(-1,-1)
偏移(-24,0)

我的代码:

Private Sub CommandButton2_Click()

'Paste to a Defined Range
ThisWorkbook.Sheets("Other Data").Range("L67").Copy

'Offset Paste (offsets 2 cells down and 1 to the right
ActiveCell.PasteSpecial xlPasteValues

ThisWorkbook.Sheets("Other Data").Range("B67").Copy
ActiveCell.Offset(-1, -1).PasteSpecial xlPasteValues
ActiveCell.Offset(-24, 0).PasteSpecial xlPasteValues

End Sub 
我在以下方面收到一个错误:

ActiveCell.Offset(-1, -1).PasteSpecial xlPasteValues
此单元格位于1个单元格上方和1个单元格左侧。如果我取消合并此单元格,代码将正常工作。但是,它应该合并以适合我的文本

同样适用于:

ActiveCell.Offset(-24, 0).PasteSpecial xlPasteValues 

嗨,我认为它与XLPaste值有关。尝试使用xlPasteAll,看看这是否解决了您的问题。

您好,我认为它与xlpastevalues连接。尝试使用xlPasteAll,看看这是否解决了您的问题。

这将起作用

Private Sub CommandButton2_Click()

    Dim Temp As Variant
    Dim R As Long

    Temp = ThisWorkbook.Sheets("Other Data").Range("L67").Value
    With ActiveCell
        R = .Row
        If R > 1 And .Column > 1 Then .Offset(-1, -1).MergeArea.Value = Temp
        If R > 24 Then .Offset(-24, 0).MergeArea.Value = Temp
    End With
End Sub
这会奏效的

Private Sub CommandButton2_Click()

    Dim Temp As Variant
    Dim R As Long

    Temp = ThisWorkbook.Sheets("Other Data").Range("L67").Value
    With ActiveCell
        R = .Row
        If R > 1 And .Column > 1 Then .Offset(-1, -1).MergeArea.Value = Temp
        If R > 24 Then .Offset(-24, 0).MergeArea.Value = Temp
    End With
End Sub