excel 在需要特定单元格的行上重复VBA代码

nzkunb0c  于 2023-02-25  发布在  其他
关注(0)|答案(1)|浏览(184)

我是VBA编码的新手,正在努力解决一个小循环问题。
我想在多行上重复代码,但使用单元格特定的代码,在新工作表中添加新行。如何循环代码,但每次代码都跳到下一行?
例如,我有一个新工作表,然后我连接A1,B1和“text”从第一个工作表上的数据范围的第一行。当代码块重复(A2,B2和“text”)时,我如何让代码实质上滚动一行
我目前有以下内容:
Copy data range into new workbook(由于隐私,一些部分被标记出来,也在记事本中,因为它太大,无法直接从VBA中截图)(此代码每次都能完美工作)
我的循环代码块如下所示:
Loop Code Block
上面的代码块是我想重复到工作表1上的数据范围的每一行,到已经创建的新工作表上。
我已经在网上做了几个小时的研究,但很难理解找到的例子,或者在试图让它们为我工作时遇到了问题。
任何帮助和建议都将不胜感激。谢谢!

5ktev3wc

5ktev3wc1#

看起来你想在新的工作表上每2行重复一次代码。除非你为每次迭代都创建一个新的工作表,否则你不想在循环中添加工作表。现在你会得到大量的新工作表。
最重要的是不要在循环中硬编码你的值,而是在循环中引用你的循环计数器:
子循环示例()

Dim x As Integer
Dim NumRows As Integer

NumRows = Sheets("Sheet1").Range("A2", Range("A2").End(xlDown)).Rows.Count

For x = 1 To NumRows Step 2

    'directly reference your code in this area
    'instead of using select or activecell, type
    'out the worksheet name you are referencing
    'you can use a with statement if using the same
    'sheet/range repeatedly
    
    'in your range withn the loop, write
    'range("A" & x) for "A1"
    'range("A" &x+1) for "A2", etc
    
    'at the end of this loop, the step 3 will skip
    ' to row 3 in the next iteration which will repeat
    'your process there. I am assuming that every
    '2 lines you want to repeat this code since
    ' you input information for the first and second rows.
    
    'could also use an offset on each of your cells
    'to achieve the same thing without the step
        
Next x

末端子组件
希望我正确地解释了你的问题,这是有帮助的!

相关问题