首页 > 解决方案 > 如何让偏移范围在公式中起作用?

问题描述

我无法将偏移范围纳入公式。这个想法是让用户在字符串中输入他们想要搜索的文本,如果找到则输入值,如果未找到则输入值。然后将所有这些转换为一个公式,该公式将插入到活动工作表的选定单元格中。问题是公式返回 SearchCell 的值而不是范围。

如何将 SearchCell 的范围而不是 SearchCell 的值放入公式中?

Sub SearchString()


Dim SelectedCell    As Range
Dim SearchCell      As Range
Dim SearchValue     As Variant
Dim FoundValue      As Variant
Dim NotFoundValue   As Variant


Set SelectedCell = Application.Selection
Set SearchCell = SelectedCell.Offset(, -1)

SearchValue = InputBox("What do you want to search for?")
FoundValue = InputBox("If found?")
NotFoundValue = InputBox("If not found?")

SelectedCell.Formula = "=IF(ISNUMBER(SEARCH(""*" & SearchValue & "*""," & SearchCell & ")), _
""" & FoundValue & """, """ & NotFoundValue & """)"


End Sub

标签: excelvba

解决方案


SearchCell.Address(RowAbsolute:=False, ColumnAbsolute:=False)

推荐阅读