excel - 如何在 cloumn2 中找到 E1 值,然后使用宏替换为 column1 值?
问题描述
我想将E1
单元格中可用的值查找到column2
行中,然后按column1
值替换。例如
B2 值应从 ABC-1 替换为 A-1。B3 值应从 ABC-1 替换为 B-1
等等。
我是宏的新手。
我试图从互联网上放代码
Sub FindReplaceAll()
Dim fnd As Variant
Dim rplc As Variant
fnd = "ABC"
rplc = Cells(i, 8).Value
Dim lastRow As Long
lastRow = Cells(Rows.Count, 4).End(xlUp).row
Dim i As Long
For i = 2 To lastRow
If Not IsEmpty(Cells(i, 4)) Then
Cells.Replace what:=fnd, Replacement:=rplc
End If
Next
End Sub
解决方案
稍微编辑您的代码以满足您描述的需求(如果理解正确)
- 您总是在绝对单元格中搜索值
E1
- 您将 B 列中的搜索值替换为 A 列中的完整值
我的样本数据基于您的评论:
Sub FindReplaceAll()
Dim fnd As String, rplc As String, i As Long
With ActiveWorkbook.Sheets("Sheet1") 'Your sheetname goes here
fnd = .Range("E1").Value
For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
.Cells(i, 2).Replace what:=fnd, Replacement:=.Cells(i, 1).Value
Next i
End With
End Sub
运行宏后:
如果您可以通过公式来做到这一点并避免使用 VBA(特别是如果您是新手),例如输入C2
:
=IF(LEFT(B2,(SEARCH("-",B2)-1))=$E$1,A2&RIGHT(B2,LEN(B2)-SEARCH("-",B2)+1),B2)
并且向下拖动...
推荐阅读
- bash - 如何根据文件名在bash中排序
- dc.js - dc.js 多图与范围图交互 - 设置过滤器时饼图为空
- c# - 如何使用 Windows 窗体打印印地语文本?
- python - 从网页获取信息并使用 pandas 和 bs4 写入 .xls 文件
- android - 为什么上下文为空?
- java - 如何调用从多个线程获取信息的实时日志模拟器
- django - 为什么不先使用 django.setup() 就无法将模型导入 python 脚本
- php - 使用 php 抓取 javascript 生成的网站
- android - 如何在android studio中修复“删除线视图”
- .net-core - 多目标 .NET Core 控制台的 Azure DevOps (VSTS) 托管 macOS 代理失败