复制并粘贴行并循环直到空白

时间:2017-03-10 05:24:22

标签: excel-vba vba excel

我有一个报价表格,我需要复制到主文件。 但我在编写下面的代码时遇到了一些麻烦, 标题信息位于" Sheet1",Cell I5,I6,I7,I8,I9,K5,K11和K12,然后我需要复制到" MySheet" A1:H1(所有工作表都在同一工作簿中) 然后我需要复制来自" Sheet1"行" B16:M16" (第一行是否总是有数据)然后过去到#34; MySheet" I1:T1,然后检查是否" B17:M17"有数据,如果有,请复制并粘贴到" Mysheet" I2:T2等等,直到有一个空行。 如果B17中存在数据,我还想循环标题,复制和粘贴:M17回到" Mysheet" A2:H2等等。

任何帮助表示赞赏 关心脾气暴躁的爸爸

1 个答案:

答案 0 :(得分:1)

根据您的评论,您将陷入问题的第二部分,即

的方式
  

从“Sheet1”行复制“B16:M16”(第一行是否总是有数据)然后过去到“MySheet”I1:T1

将是:

Worksheets("Sheet1").Range("B16:M16").Copy Worksheets("MySheet").Range("I1:T1")

或者,可能在循环中:

Dim r As Long
r = 16
Do While Not IsEmpty(Worksheets("Sheet1").Range("B" & r))
    Worksheets("Sheet1").Range("B" & r & ":M" & r).Copy Worksheets("MySheet").Range("I" & (r - 15) & ":T" & (r - 15))
    r = r + 1
Loop