乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > <em>excel</em>用<em>vba</em>实现内容的复制代码

<em>excel</em>用<em>vba</em>实现内容的复制代码

作者:乔山办公网日期:

返回目录:excel表格制作


1、添加内件名称数据辅助列,输入以下公式,然后向下填充公式

=LEN(N2)-LEN(SUBSTITUTE(N2,",",""))+1

2、添加行数对应辅助列,输入以下公式,然后向下填充公式

=SUM(Q$2:Q2)-Q2

3、输入以下公式,然后向右向下填充公式

=IF(ROW(A1)-1<SUM($Q:$Q),LOOKUP(ROW(A1)-1,$R$2:$R$4,B$2:B$4),"")

生成对应内件名称个数的行数内容。

 

详见附图同表举例



打开工作表,找到原数据,。插入表单按钮。


ALT+F11打开VBA代码编辑器,输入宏代码如下。


将表单按钮指定到宏,运行代码。查看运行后的效果,目标区域出现了和原数据一样的数据,但位置发生了变化。


输入的代码内容并解释。

Sub 运行代码()For i = 1 To 12Range("c" & i + 2) = Range("b" & i)Next iEnd Sub


1.原数据单元格区域 b1 b2 b3 b4  到 b12;

2.目标单元格区域出现  c3 c4 c5 c6 c7 到 c14;

3.原数据区域在后,目标区域在前;

4.目标区域和原数据之间的相同数据之间的位置变化:原数据与目标区域之间行号之差;

5.使用FOR NEXT循环,步长为1,步长为目标单元格行号之差。


12345678910Sub fuzhi()with activesheet For i = .Range("N65536").End(xlUp).Row To 2 Step -1 n = UBound(Split(.Cells(i, "N"), ",")) .Rows(i & ":" & i + n - 1).Insert .Rows(i + n).Copy .Rows(i & ":" & i + n - 1) .Rows(i + 1 & ":" & i + n).Interior.Color = vbGreen Next end withEnd Sub

复制A1:A3单元格数据的代码应该可以是
Range("A1:A3").Copy

相关阅读

  • 在<em>excel</em>如何使用<em>vba</em>判断<

  • 乔山办公网excel表格制作
  • Sub TestFind()MsgBox Sheet1.Range("1:" & Sheet1.Rows.Count).Find("测试字符串").AddressEnd Sub如果是多个,并且不要提示,让它变成行数的变量excel vba查找某一行最后一个非空单元格" src="/uploads/t
关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网