2015-07-01 42 views
0

我们使用Excel文件来跟踪药物治疗。一旦药物治疗结束,我会在K列中写下“是”(可能会在稍后将其更改为日期)。我已经为每个月准备了一张表(名为:01 - 12),并且我希望它能够自动将K列中没有条目的行复制到下一个电子表格中。范围是3A:K22。 (行1 & 2有数据不应该被修改,我希望我已经描述了足够的细节让你理解,如果没有,我会很乐意澄清任何误解如果单元格为空时如何复制行?

回答

0

如果我理解正确,你想复制每一行,其中在k列的单元格是空的?

Dim rCell As Range, rng As Range, NextRow As Long 
Set rng = Workbook.Sheets("SheetName").Range("K3:K22") 

'loop through each K cell 
For Each rCell In rng 
    If IsEmpty(rCell) Then 
     'copy that row 
     Range("A" & rCell.Row & "K" & rCell.Row).Copy 
     'if desired here can be code to check the date to see which sheet to insert into 
     NextRow = Workbook.Sheets("MonthSheet").Range("A" & Rows.Count).End(xlUp).Offset(1).Row 
     Workbook.Sheets("MonthSheet").Range("A" & NextRow & "K" & NextRow).Paste 
    End If 
Next rCell 

这将检查每一个细胞在K列,看它是否为空,如果是,将它复制到一个空白行中的月Sheet

+0

谢谢Evan。这看起来很有前途。我一直在试图实现这个代码,但是当使用它时,我得到一个运行时错误,并且不知道如何修正它。调试器停在此行:Range(“A”&rCell.Row&“K”&rCell.Row).Copy。有人可以向我解释如何使用它? –

+0

什么是错误编号和描述? – Evan

+0

运行时错误1004 –

相关问题