Excel VBA逐行粘贴行

时间:2018-07-31 12:31:53

标签: excel excel-vba

此处的想法是将行从一张工作表&复制到工作表Samples中的特定位置。它工作正常,但我只能在工作表的开头加上换句话说,只能在上述范围内添加。当我按下按钮时,我希望它出现在开头,或者如果已经有一个产品-在该产品之后,依此类推。这是代码:

MainTable

基本上,内容需要到达的范围应为:Range(“ 12:22”)-> Range(“ 23:33”)-> Range(“ 34:44”),依此类推,具体取决于现有内容产品...

我想到了一个可能的解决方案,但我不知道该怎么做:

如果我在工作表Sub AddProduct() AddProduct Macro Sheets("Samples").Select Rows("1:11").Select Range("N1").Activate Application.CutCopyMode = False Selection.Copy Sheets("MainTable").Select Range("12:22").Select Selection.Insert Shift:=xlDown End Sub 的第V列中添加了一个隐藏的字母x,那么我可以对该列执行SamplesCOUNTIF的数量将告诉我我在x中添加了多少个产品。

然后将这段代码放在MainTable中的空白处(在本例中为O5,P5):

O5:
MainTable

P5:
=11*COUNTIF(V:V;"x")+12

现在我不知道的部分:

=11*COUNTIF(V:V;"x")+22

我该如何实现?将值从O5和P5单元格获取到VBA

1 个答案:

答案 0 :(得分:1)

...    
Dim StartRow as long, EndRow as long 

StartRow = Range("O5").value  
EndRow = Range("P5").value
Range(StartRow & ":" & EndRow).Select
....