Excel 复制除最后两列以外的所有列

Excel 复制除最后两列以外的所有列,excel,vba,Excel,Vba,我的代码中有一个代码片段,它工作得很好,但选择了每行中的所有列。我需要A-M列,但对于我的生活来说,我无法得到看起来非常简单的调整来正常工作 下面是我的代码: For i = 2 To ws1.Range("B65536").End(xlUp).Row If ws1.Cells(i, 12) = Sheets("main").Range("B4") Then ws1.Rows(i).Copy ws2.Rows(ws2.Cells(ws2.Rows.Count, 2).End(xl

我的代码中有一个代码片段,它工作得很好,但选择了每行中的所有列。我需要A-M列,但对于我的生活来说,我无法得到看起来非常简单的调整来正常工作

下面是我的代码:

For i = 2 To ws1.Range("B65536").End(xlUp).Row
        If ws1.Cells(i, 12) = Sheets("main").Range("B4") Then ws1.Rows(i).Copy ws2.Rows(ws2.Cells(ws2.Rows.Count, 2).End(xlUp).Row + 1)

您可以尝试以下代码,看看它是否有效:

For i = 2 To ws1.Range("B65536").End(xlUp).Row
        If ws1.Cells(i, 12) = Sheets("main").Range("B4") Then ws1.Range("A" & i & ":M" & i).Copy ws2.Cells(ws2.Cells(ws2.Rows.Count, 2).End(xlUp).Row + 1, 1)

我很感激你的尝试,但那做了同样的事情——它复制了整行。我之前确实试过类似的方法,但没能成功。