我有一个信息栏。我需要检查每个单元格的内容,以查看哪个用户帐户发送了该信息。每个单元格中的文本通常包含用户名,但没有设置格式。
我有所有用户名的列表(名称范围为“帐户”)。
我们提取每个单元格中的用户名的计划是使用自定义Excel VBA函数执行以下操作:
该函数显示错误。
Function EXTRACTNICK(MinLen As Integer, MaxLen As Integer, checktext As String)
Dim i As Integer
Dim textLen As Integer
Dim extractText As String
Dim Str As String
Str = ""
For textLen = MinLen To MaxLen
For i = 1 To (Len(checktext) - textLen + 1)
extractText = Mid(checktext, i, textLen)
If IsError(WorksheetFunction.VLookup(extractText, Range("Accounts"), 1, False)) Then
Str = Str
Else
Str = Str & " / " & extractText
End If
Next i
Next textLen
ExtractNickName = Str
End Function
答案 0 :(得分:0)
在照片中,假设我的黄色范围等于您命名的范围Accounts
Option Explicit
Public Function Extracting(name As Range) As String
Dim Arr, i As Long
Arr = Sheets("Sheet1").Range("A1:A10").Value
For i = LBound(Arr) To UBound(Arr)
If InStr(name, Arr(i, 1), 0) Then
Extracting = Extracting & Arr(i, 1) & "/"
End If
Next i
If Extracting = "" Then
Extracting = "No Users Found"
Else
Extracting = Left(Extracting, Len(Extracting) - 1)
End If
End Function