首页 > 解决方案 > 将公式从宏注入到 Excel 单元格

问题描述

试图用这个宏注入一个公式,但不知道如何正确编写它:

Public Function GetURL(cell As Range, Optional default_value As Variant) As Variant
      Dim output As Variant
      If (cell.Range("A1").Hyperlinks.Count <> 1) Then
         
         GetURL = cell.Range("A1").Formula = "=MID(FORMULATEXT(cell.Range("A1")),FIND(CHAR(34),FORMULATEXT(cell.Range("A1")))+1,FIND(CHAR(34),FORMULATEXT(cell.Range("A1")),FIND(CHAR(34),FORMULATEXT(cell.Range("A1")))+1)-FIND(CHAR(34),FORMULATEXT(cell.Range("A1")))-1)"
      Else
         GetURL = cell.Range("A1").Hyperlinks(1).Address
      End If
      
      
End Function

请指教

标签: excelvba

解决方案


当你与"角色一起工作时,事情会变得很棘手。我想我理解您在上面尝试的公式中寻找的内容。我已经测试了这段代码,它按预期工作

ActiveCell.Value = "=MID(FORMULATEXT(A1),FIND(CHAR(34)&CHAR(34),FORMULATEXT(A1),1)+1,FIND(CHAR(34)&CHAR(34),FORMULATEXT(A1),FIND(CHAR(34)&CHAR(34),FORMULATEXT(A1),1)+3)-FIND(CHAR(34)&CHAR(34),FORMULATEXT(A1),1))"

单元格A1包含以下公式=SUM(A2:A9) & " ""Test""",上面的代码返回"Test"


推荐阅读