在Excel 2010中使用宏将值从正上方的单元格复制到单元格中

时间:2015-03-26 13:54:12

标签: excel-vba excel-2010 vba excel

我有一行下拉列表,我正在尝试创建一个宏,以便如果该行完全填充,我可以突出显示该行下面的单元格,然后运行宏并让它填充那些突出显示的单元格前一行单元格的值。

到目前为止,这是我的代码,它非常简单但每次运行时都会出现运行时错误“13”类型不匹配。

Private Sub CommandButton1_Click()

If Application.Selection = 1 Then      'This line is the problem
Exit Sub
ElseIf Application.Selection > 1 Then       'This line is also a problem
Selection.SpecialCells(xlCellTypeBlanks).Select
Selection.FormulaR1C1 = "=R[-1]C"
End If

End Sub

1 个答案:

答案 0 :(得分:0)

您可以将其缩减为较短的代码,仅适用于Selection中存在的空白单元格。

如果Selection无效,或者没有空白单元格,则代码将在错误处理时结束

Private Sub CommandButton1_Click()
On Error Resume Next
If Selection.Cells.Count > 1 Then Selection.SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
End Sub