VBA获取函数以返回字符串

Edg*_*ian 1 vba

我有一系列大学的价值观.例如,我有一个字符串"密歇根大学"和"UMich"

为什么以下函数不会在单元格中返回一个字符串"密歇根大学"

Function CleanUniCode(entry) As Variant
If entry = "UMich" Then entry = "University of Michigan"

End Function
Run Code Online (Sandbox Code Playgroud)

也试过这个,单元格返回0,不知道为什么.

Function CleanUniCode(entry) As Variant
If entry Like "[UMich]" Then
entry = "University of Michigan"
ElseIf entry Like "[UPenn]" Then
entry = "University of Pennsylvania"
Else:
End If

End Function
Run Code Online (Sandbox Code Playgroud)

Ant*_*ton 5

这是因为您已将返回值分配给entry,但您应将其分配给CleanUniCode:

Function CleanUniCode(entry) As Variant
    If entry = "UMich" Then CleanUniCode = "University of Michigan"
End Function
Run Code Online (Sandbox Code Playgroud)

始终将返回值分配给函数名称.