Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.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
VBA函数-参数非可选(分隔文本块)_Vba_Excel - Fatal编程技术网

VBA函数-参数非可选(分隔文本块)

VBA函数-参数非可选(分隔文本块),vba,excel,Vba,Excel,我想在整个excel工作表中的W列中的每个“Y”上方添加一个空行。这将帮助我分离数据块。我不断得到“编译错误:参数不是可选的”。给出了什么?正如Scott Craner指出的那样,您缺少了If和Next的结束语句 此外,在插入或删除行时,需要向后循环行集 见下面的代码: Sub Macro6() Dim rngW As Range Dim cell As Range Set rngW = Range("W1", Range("W65536").End(xlUp)) For Each cell

我想在整个excel工作表中的W列中的每个“Y”上方添加一个空行。这将帮助我分离数据块。我不断得到“编译错误:参数不是可选的”。给出了什么?

正如Scott Craner指出的那样,您缺少了
If
Next
的结束语句

此外,在插入或删除行时,需要向后循环行集

见下面的代码:

Sub Macro6()

Dim rngW As Range
Dim cell As Range

Set rngW = Range("W1", Range("W65536").End(xlUp))
For Each cell In rngW
If cell.Value = "Y" Then

Rows.Select
Range.Activate
Selection.Insert Shift:=xlDown


End Sub

正如Scott Craner指出的那样,您缺少
If
Next
的结束语句

此外,在插入或删除行时,需要向后循环行集

见下面的代码:

Sub Macro6()

Dim rngW As Range
Dim cell As Range

Set rngW = Range("W1", Range("W65536").End(xlUp))
For Each cell In rngW
If cell.Value = "Y" Then

Rows.Select
Range.Activate
Selection.Insert Shift:=xlDown


End Sub

您缺少了
结束If
下一个单元格
您缺少了
结束If
下一个单元格
距离提交几乎完全相同的内容只有两秒钟。唯一的区别是我将
与ActiveSheet
放在父单元格中,并使用了
行。计数
而不是硬编码行。@ScottCraner-fair这两种观点都有。我不想拧太多!这取决于我回答问题的深度:)。我确实改成了行。数数,因为这是一种更好的方法。非常感谢大家!!我只是想让你知道你为什么打我。:)距离提交几乎完全相同的内容只有两秒钟的时间。唯一的区别是我将
与ActiveSheet
放在父级,并使用了
行。Count
而不是硬编码行。@ScottCraner-两个帐户的分数都很公平。我不想拧太多!这取决于我回答问题的深度:)。我确实改成了行。数数,因为这是一种更好的方法。非常感谢大家!!我只是想让你知道你为什么打我。:)