You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac版Excel中使用Scripting.Dictionary的VBA函数返回#VALUE!求助

解决Mac版Excel中RemoveDupes1函数返回#VALUE!的问题

可能的原因

  • 原函数使用了Windows VBA特有的对象(比如Scripting.Dictionary),Mac版Excel默认未加载对应库
  • 函数包含Mac不兼容的字符串操作语法
  • 参数传递或单元格引用逻辑存在平台适配问题

兼容Mac的VBA去重函数

替换原函数为以下跨平台版本,操作步骤如下:

  1. 打开Excel,按Option + F11打开VBA编辑器
  2. 右键左侧工程窗口的工作簿名称,选择插入→模块
  3. 将以下代码粘贴到模块窗口:
Function RemoveDupes(rng As Range) As String
    Dim char As String
    Dim result As String
    Dim i As Integer
    
    result = ""
    For i = 1 To Len(rng.Value)
        char = Mid(rng.Value, i, 1)
        If InStr(result, char) = 0 Then
            result = result & char
        End If
    Next i
    
    RemoveDupes = result
End Function
  1. 返回工作表,在目标单元格输入=RemoveDupes(A2)即可

验证示例

  • 原字符串:trout
  • 去重后结果:trou

内容的提问来源于stack exchange,提问作者cmc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 05:35:13