Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 代码需要将活动单元格下面的行分组_Excel_Rows_Vba - Fatal编程技术网

Excel 代码需要将活动单元格下面的行分组

Excel 代码需要将活动单元格下面的行分组,excel,rows,vba,Excel,Rows,Vba,有一个1000多行的工作表,第一行有文本模式,然后有3个空行。我需要将文本从B列第一行向下复制到接下来的3行。然后我需要将这3行指定为初始行的一组。我已经为前两行编写了下面的代码,但是它在第3行停止,我得到了一个编译错误:语法错误。我从记录初始宏的步骤中知道需要第3行的开头行,但似乎找不到正确的语法来告诉系统要分组的行是下一个3行 编辑: 添加了缺少的代码示例 Selection.AutoFill Destination:=Range(ActiveCell.Offset(0, 0), Activ

有一个1000多行的工作表,第一行有文本模式,然后有3个空行。我需要将文本从B列第一行向下复制到接下来的3行。然后我需要将这3行指定为初始行的一组。我已经为前两行编写了下面的代码,但是它在第3行停止,我得到了一个编译错误:语法错误。我从记录初始宏的步骤中知道需要第3行的开头行,但似乎找不到正确的语法来告诉系统要分组的行是下一个3行

编辑: 添加了缺少的代码示例

Selection.AutoFill Destination:=Range(ActiveCell.Offset(0, 0), ActiveCell.Offset(3, 0)), Type:=xlFillDefault
Range(ActiveCell.Offset(0, 0), ActiveCell.Offset(3, 0)).Select
Rows(ActiveCell.Row 1,ActiveCell.Row 3).Select
Range(ActiveCell.Offset(3, -1)).Activate
Selection.Rows.Group
Range(ActiveCell.Offset(4, 0)).Select
第二次编辑: 在录制的宏中添加了通过击键来完成接下来3行的分组。从刚刚将第一行复制到其他3行开始,击键为:1向下、Shift/Space、Shift/2向下、Alt/dgg。 宏:


通过录制从Developer选项卡的Code部分激活的带有“Use Relative References”的宏,我录制了一个工作模型来解决我的问题。该marco执行以下操作: -将活动单元格内容向下复制3行 -选择整个3行 -使这3行成为初始行的一组 -转到下一个分组的下一个主行

###########录制的宏中的初始脚本############################
Selection.AutoFill Destination:=ActiveCell.Range("A1:A4"), Type:=xlFillDefault
ActiveCell.Range("A1:A4").Select
ActiveCell.Offset(1, 0).Rows("1:3").EntireRow.Select
ActiveCell.Offset(3, 0).Range("A1").Activate
Selection.Rows.Group
ActiveCell.Offset(1, 0).Range("A1").Select
在测试生成的宏时,我发现了一个问题,通过删除第4行解决了这个问题。因此,成功的宏代码如下所示:

%%%%%%%%%%%%%%%%%%%%%%%%最终脚本
Selection.AutoFill Destination:=ActiveCell.Range(“A1:A4”),类型:=xlFillDefault
ActiveCell.Range(“A1:A4”)。选择
ActiveCell.Offset(1,0)。行(“1:3”)。EntireRow。选择
选择.行.组

ActiveCell.Offset(3,1).Range(“A1”)。选择

您能给我们显示导致错误的代码吗,或者至少提供一个?
Selection.AutoFill Destination:=ActiveCell.Range("A1:A4"), Type:=xlFillDefault
ActiveCell.Range("A1:A4").Select
ActiveCell.Offset(1, 0).Rows("1:3").EntireRow.Select
ActiveCell.Offset(3, 0).Range("A1").Activate
Selection.Rows.Group
ActiveCell.Offset(1, 0).Range("A1").Select