excel - 如果找到字符串,VBA插入设置的行数
问题描述
我是 Excel 中的宏的新手,我正在尝试加快进程。如果上面的单元格中存在某些文本,我需要添加不同数量的空白行。不相等,但包含。
例如,如果 A1 包含“Apples”,则在下方添加两个空白行。如果 A6 有“李子”,则在下面添加四个空白行,等等。
我现在拥有的是这样的:
For a=1 To ActiveSheet.Cells(Rows.Count,1).End(x1Up).Row
If ActiveSheet.Cells(a,1).Value = “Apples” Then
ActiveSheet.Rows(2).Insert
a = a+1
ELSE
If ActiveSheet.Cells(a,1).Value = “Plums” Then
ActiveSheet.Rows(4).Insert
a = a+1
End If
End Sub
到目前为止,我收到了一个编译错误,指出“如果没有 End If,则阻止”,尽管我相信我将它们都关闭了。我不确定我是否也正确地比较或搜索了一个字符串(指的是我对 ="Apples" 的使用),但根本无法让它运行以测试该部分。
解决方案
For a = 1 To ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
If TypeName(ActiveSheet.Cells(a, 1)) = "String" Then
If ActiveSheet.Cells(a, 1).Value = "Apples" Then
ActiveSheet.Rows(2).Insert
a = a + 1
ElseIf ActiveSheet.Cells(a, 1).Value = "Plums" Then 'One error here
ActiveSheet.Rows(4).Insert
a = a + 1
End If
End If
Next 'And here too
推荐阅读
- swift - 如何使 CoreData 模型符合协议?
- c# - Razor 页面授权卡在带有外部 cookie 的循环中
- java - 通过查看 RecyclerView 的值来查找 RecyclerView 行位置
- python-3.x - 为什么第一个窗口需要调用 mainloop() 而第二个窗口不需要
- python - 如何将 jinja2 扩展添加到 python 瓶
- apache - apache 将端口从 8000 重定向到 80
- python - 为什么不调用 float(hrs) 使 pay=hrs*2 稍后工作?
- scala - Scala Pattern 类型与预期类型不兼容
- ajax - 对 AJAX 和 PHP 有帮助吗?
- shell - 将其他函数的参数分配给变量