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

Mac版Excel VBA中Double变量赋值触发运行时错误‘6’溢出问询

Double类型变量互相赋值触发VBA运行时错误‘6’(溢出)的问题分析

环境信息

  • 操作系统:Mac OS 13.5.1
  • Excel版本:Microsoft 365 Excel for Mac 16.78
  • VBA版本:7.1

问题重现

在上述环境中,执行以下代码时,a = b这一行会触发运行时错误‘6’:溢出:

Option Explicit

Sub test2()
    Dim a As Double
    Dim b As Double
    
    a = 0
    b = 10
    Debug.Print a; b
    a = b
    'a = Round(b, 10)
    Debug.Print a; b
End Sub

补充现象

  • 若将赋值语句改为a = Round(b, 10),则不会触发错误
  • 若将变量类型改为Variant或其他类型(如Single),该问题也不会出现
  • Double类型本身设计支持同类型直接赋值,此现象属于Mac版Excel VBA的疑似bug

临时解决方案

  • 使用Round函数对赋值的数值进行处理后再赋值
  • 若业务逻辑允许,将变量临时改为Variant类型
  • 尝试更新Microsoft 365 Excel for Mac到最新版本,确认是否已修复该bug

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 09:52:02