从范围复制非空白单元格到范围

我想知道你是否可以帮助我:

范围B11:B251和C11:C251可能有也可能没有一些值。 我想能够从单元格范围M11:M251&N11:N251到B11:B251&C11:C251复制非空白单元格,所以如果M&N范围中有任何值,它们应该覆盖B&C中相同行中的值,但是如果M&N范围内有空白值,不应复制,并保留B&C中已存在(或不存在)的值。 我清楚了吗? 😉

感谢您的回复!

 Sub Main() Dim i As Long For i = 11 To 251 If Not IsEmpty(Range("M" & i)) Then _ Range("B" & i) = Range("M" & i) If Not IsEmpty(Range("N" & i)) Then _ Range("C" & i) = Range("N" & i) Next i End Sub 

这段代码只会将M&N列中的非空值复制到B&C

这段代码应该做的伎俩:

 Sub CopyRangeToRange() Dim CpyFrom As Range Dim Cell As Range Set CpyFrom = ActiveSheet.Range("M11:N251") For Each Cell In CpyFrom If Cell.Value <> vbNullString Then Cell.Offset(0, -11).Value = Cell.Value End If Next Cell End Sub