excel - 连接字符串而不是替换
问题描述
我正在从表中过滤某些列:
ActiveSheet.Range("A1").AutoFilter Field:=3, Criteria1:="<>*/*"
我想要所有不包含的东西/
然后我申请Selection.Replace
将该单元格的内容与/SUP
Selection.Replace What:="???", Replacement:="???/SUP", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
但它不起作用。我期望的输出是:
cellWith/ --- replace --- cellWith/
cellWithout --- replace --- cellWithout/SUP
有人能帮我吗?
解决方案
与我的上一条评论相关,循环使用变体数组,这应该很快,因为检查是由 VBA 执行的,而不是每次都引用单元格:
Sub test()
Dim lr As Long, i As Long, arr As Variant
lr = Cells(Rows.Count, 1).End(xlUp).Row
arr = Range(Cells(1, 1), Cells(lr, 1)).Value
For i = 2 To UBound(arr)
If InStr(arr(i, 1), "/") Then
Cells(i, 2).Value = arr(i, 1)
Else
Cells(i, 2).Value = arr(i, 1) & "/SUP"
End If
Next i
End Sub
我将值输出到 b 列(出于可视化目的,从循环中的第 2 行开始),如下所示:
推荐阅读
- c++ - 模板类列表
用于单链表实现 - vb.net - 以这部分代码为例,我们如何编写伪代码呢?
- reactjs - React Native:如果我使用 `npx react-native`,package.json 中的版本不是最新的会发生什么?
- sql - 如果谓词 col 是字段中的一个因素,SQL Server 将如何查询使用计算字段分区的表?
- sql - 数组中存在于其他两列之间的所有日期的计数
- arrays - 如何在 c 中读取文件、转换字母以及将字符串和整数打印为数组?
- python - 到达终点的最小跳跃
- cursive - Intellij Cursive 中的“存根”是什么?
- python-3.x - 如何从搜索栏复制 URL?
- excel - Microsoft Access 数据库引擎找不到对象工作表 - ACE OLEDB