复制一些条件的值

我在A栏中有1到10个,在B 栏中有个 name 。 我试图完成的是检查单元格B2中的name ,如果是空的,那么它会将单元格A2中的数字复制到单元格H2。 但是,如果单元格B2已经包含一个名称,那么它将把数字从单元格A3复制到单元格H2,等等。

这是我的代码:

 Private Sub CommandButton1_Click() If IsEmpty(Range("B2")) Then Range("A2").Copy destination:=Range("H2") Else Worksheets("sheet6").Cells(Rows.Count, 1).End(xlUp).Offset(0, 1).Copy _ destination:=Range("H2") End If End Sub 

尝试这个:

 With Sheets("SheetName") .Range("B:B").Find(vbNullString, [B1]).Offset(0, -1).Copy _ Destination:=.Range("H2") End With 

这将findB1之后的第一个空白单元格,然后将其对应的值复制到H2中。

编辑1:如果H2是在一个不同的工作簿

 Dim otherWB As Workbook ' always declare variable Set otherWB = Workbooks("WorkbookName.xlsx") ' or whatever name you got With Sheets("SheetName") .Range("B:B").Find(vbNullString, [B1]).Offset(0, -1).Copy _ Destination:=otherWB.Sheets("OtherSheetName").Range("H2") End With