返回目录:excel表格制作
将以下代码复制到新建宏,运行即可zhidao
注意,新建宏名字不能使用纯数字,复制的时候把新建的宏开头和结尾版删除掉
即删除
sub 宏名()
end sub
以下是代码
----------------------------------------
Sub 替换超链接()
Dim sTobeReplaced As String
Dim sReplaceWith As String
sTobeReplaced = InputBox("输入你要查找的字符权", "输入你要查找的字符")
sReplaceWith = InputBox("输入你要替换的字符", "输入你要替换的字符")
For Each Ws In Application.Worksheets '遍历工作表
For Each h In Ws.Hyperlinks '遍历超链接
If InStr(h.Address, sTobeReplaced) <> 0 Then
aLink = Replace(h.Address, sTobeReplaced, sReplaceWith)
h.Address = aLink
End If
Next
Next
End Sub
一、批量修改超链接的地址不同:
对于超链接地址不同的情况下,比如我们要修改的是链接中的某一段数据要批量替换。我们可以采用Excel宏来进行操作:
(1)第一步,首先选择“工具>>宏>>脚本编辑器”
(2)进入脚本编辑器界面,就可以看到html代码状态,这个时候可以利用Ctrl+F进行超找,选择要替换的一段链接或者整个链7a64e78988e69d83331接进行对应的替换。如下图所示:
(3)点击“全部替换”,完成全部替换。
二、批量修改的超链接地址完全相同
针对超链接地址完全相同的情况很简单,采用excel宏命令比较快捷方便,具体操作举例如下:
(1)进入上面介绍的脚本编辑界面,放一个按钮,双按钮,添加代码:
Private Sub CommandButton1_Click()
For Each h In Worksheets(1).Hyperlinks
If h.Range.Column = 2 Then 'B列
h.Address = Replace(h.Address, "地址一", "地址二")
ElseIf h.Range.Column = 3 Then 'C列
h.Address = Replace(h.Address, "地址一", "地址三")
ElseIf h.Range.Column = 4 Then 'D列
h.Address = Replace(h.Address, "地址一", "地址四")
End If
Next
End Sub
If中的条件和值,以此类推,按照自己的需求进行相对应修改。
(2)退出设计模式,点按钮运行。
(3)完成批量替换操作。
用公式替换
=SUBSTITUTE(A1,"com","cn"),下拉
或者用VBA
按ALT+F11键,打来开VBA编辑器
在菜单-插入-模块-右自边空白处粘贴zhidao以下代码,按F5完成要求
Sub 修改()
Application.ScreenUpdating = False
Dim ran As Range
For Each ran In ActiveSheet.UsedRange
ran = Replace(ran, "com", "cn")
Next
Application.ScreenUpdating = True
End Sub