Vba 以非常特定的格式将网站链接粘贴到word文档中

Vba 以非常特定的格式将网站链接粘贴到word文档中,vba,ms-word,Vba,Ms Word,我为一个包含“.”的链接录制了一个宏,效果非常好 我想创建一个宏,不管它是否以 https:// http:// 它以此特定格式粘贴链接。我来自Python,不熟悉VBA。在python中,我将执行以下操作: if "http://www." in mylink: replace("http://www.", "") 对于上述每一个项目 如何在VBA中执行类似操作 这是我当前的宏,它删除“.”并根据需要格式化链接(带下划线,大小为10,括号中) 我会注意到,“Applicati

我为一个包含“.”的链接录制了一个宏,效果非常好

我想创建一个宏,不管它是否以

  • https://
  • http://
它以此特定格式粘贴链接。我来自Python,不熟悉VBA。在python中,我将执行以下操作:

if "http://www." in mylink:
    replace("http://www.", "")
对于上述每一个项目

如何在VBA中执行类似操作

这是我当前的宏,它删除“.”并根据需要格式化链接(带下划线,大小为10,括号中)

我会注意到,“Application.Run MacroName:=”Normal.NewMacros.PS“是一个简单的复制和粘贴功能。

试试:

Sub Demo()
With Selection.Range
  .Paste
  If InStr(.Text, "www.") > 0 Then
    .Text = "(" & Split(.Text, "www.")(1) & ")"
  ElseIf InStr(.Text, "://") > 0 Then
    .Text = "(" & Split(.Text, "://")(1) & ")"
  End If
  .Font.Size = 10
  .Start = .Start + 1
  .End = .End - 1
  .Font.Underline = True
End With
End Sub

这正是我想要的!如果我不希望括号下划线,我该怎么办?我尝试将“.Font.Underline=True”放在括号之前,但没有成功。
Sub Demo()
With Selection.Range
  .Paste
  If InStr(.Text, "www.") > 0 Then
    .Text = "(" & Split(.Text, "www.")(1) & ")"
  ElseIf InStr(.Text, "://") > 0 Then
    .Text = "(" & Split(.Text, "://")(1) & ")"
  End If
  .Font.Size = 10
  .Start = .Start + 1
  .End = .End - 1
  .Font.Underline = True
End With
End Sub