VBA Excel代码,用于检查选择中是否找到某些文本,然后更改单元格文本

时间:2015-03-06 09:56:00

标签: excel excel-vba vba

我在定价部门工作,我制作了一个宏,使用此代码将部件号更改为超链接

Private Sub CommandButton1_Click()
Dim userResponce As Range

On Error Resume Next
Set userResponce = Application.InputBox("select a range with the mouse", Default: = Selection.Address, Type: = 8)
On Error GoTo 0
If userResponce Is Nothing Then
MsgBox "Cancel clicked"
Else
MsgBox "You selected " & userResponce.Address
End If

For Each xCell In userResponce
If xCell.Value < > ""
Then
xCell.NumberFormat = "@"
xCell.Value = Trim(xCell.Value)
URL = "~pricer.cfm?part_number=" & xCell.Value & "&buyQty=0&buyUofm=1"
ActiveSheet.Hyperlinks.Add Anchor: = xCell, Address: = URL, TextToDisplay: = xCell.Value
End If

Next xCell

现在,我正在尝试测试单元格内容是否以某个前缀开头,如果我想添加 - 在它之后,我知道它是使用此完成的

If InStr(1, celltxt, "TK") Then

但不确定如何运行它,因此它将涵盖我的选择,而不是一个单元格。

1 个答案:

答案 0 :(得分:0)

我认为您应该使用最后一个If语句来选择进行该匹配的单元格。因此匹配的单元格将采用超链接替换,而无匹配则不会。

If xCell.value <> "" and InStr(1, cellTxt, "TK") > 0 Then
{...}
End If