Excel 首先搜索并替换随机单元格文本:
我有一大堆行(100K+)来搜索和修改内容 例如,单元格包含与DGC9610411:DB:10:82相似的文本 所有这些文本每行都可以更改,除了:对我来说意味着什么 在这一行和每隔一行中,我需要删除第一行:和后面的所有文本,以便单元格看起来像DGC9610411 接下来,我将在末尾添加另一个单元格的内容。我认为这将是一个简单的步骤,我很可能不费吹灰之力就能弄明白 我在每一行的while循环中都有这段代码。因此,代码一次只查看一行 我已经搜索过了,但每个人似乎都有不同的需求。试试这个小宏:Excel 首先搜索并替换随机单元格文本:,excel,text,replace,cell,Excel,Text,Replace,Cell,我有一大堆行(100K+)来搜索和修改内容 例如,单元格包含与DGC9610411:DB:10:82相似的文本 所有这些文本每行都可以更改,除了:对我来说意味着什么 在这一行和每隔一行中,我需要删除第一行:和后面的所有文本,以便单元格看起来像DGC9610411 接下来,我将在末尾添加另一个单元格的内容。我认为这将是一个简单的步骤,我很可能不费吹灰之力就能弄明白 我在每一行的while循环中都有这段代码。因此,代码一次只查看一行 我已经搜索过了,但每个人似乎都有不同的需求。试试这个小宏: Sub
Sub colonoscopy()
Dim c As String
Dim r As Range, I As Long
For Each r In ActiveSheet.UsedRange
v = r.Value
I = InStr(1, v, ":")
If I > 0 Then
r.Value = Mid(v, 1, I - 1)
End If
Next r
End Sub
只需使用查找和替换,不需要vba或公式
:*
A
更改为实际的列字母
Sub tgr()
Columns("A").Replace ":*", ""
End Sub
编辑:根据要求,我正在添加公式解决方案。在单元格B1中并向下复制:
=LEFT(A1,FIND(":",A1&":")-1)
很不错的!我没有意识到Replace方法支持通配符。是的,如果你真的想在VBA中做同样的事情:
Columns(“A”)。Replace:*“,”
我必须使用VBA,因为我正在用这些数据执行大量其他命令。我检查这是正确的答案,因为我使用了你的第二个建议栏(“A”)。替换:“*”,“效果很好。非常感谢。