首页 文章

Excel 2007和Excel 2010或更新版本之间的VBA是否存在兼容性问题?

提问于
浏览
1

我不是VBA专家,刚刚开始在新工作中做一些VBA工作 . 某些用户在Windows XP计算机上安装Office 2007,而其他用户在Windows 7计算机上安装Office 2010或2013 . 工作手册一直很好,直到3月底2007版本开始在某些单元格上进行不同的舍入,如果他们甚至显示数字,因为有时他们只是显示英镑符号 . 如果用户在Excel 2010或Excel 2013中打开相同的工作簿,则可以 . 这是一个可以解决的问题还是只是不兼容?

1 回答

  • 1

    通常,任何工作簿在2007年到最新版本之间都是完全兼容的 .

    我们确实遇到过某些工作簿的问题 . 这些是在Win XP上使用Excel 2007创建的 . 我们现在有Win7和Excel 2010以及Excel 2013;我们仍然使用Excel 2007的Win XP . 它不是一个共享的工作簿,但我们来回传递它来进行更改 .

    我们偶尔会遇到格式化为“常规”的单元格的问题 . 它们自发地改变为日期格式(它们将显示为井号######,因为细胞太窄) . 我不完全理解原因但当它发生时它会影响具有“通用格式”的单元格 . 只需将日期格式更改为数字格式,问题就解决了 . 这是一本庞大的工作簿,是一个大问题 .

    我注意到,只要将某些内容复制到工作簿中,它就会创建新的单元格样式 . 我们在工作簿中有数百种单元格样式 . 所有问题都有一种新的细胞样式 . 当我将单元格样式中的单元格格式更改为数字格式时,它就会保持这种状态 .

    问题单元格格式通常是日期格式 . 当我查看日期格式时,它通常是区域相关的日期格式 . 格式化单元格时,请选择“日期类别”,然后选择一种格式类型,其格式与区域相关 . 所以我将日期格式更改为不依赖于区域的格式,这似乎有所帮助 .
    enter image description here

    所以回顾一下:

    • 我删除了所有单元格样式,但有一些

    • 所有剩余的单元格样式均未指定数字格式

    • 我用数字将所有单元格更改为General以外的格式

    • 我避免使用区域相关的日期格式

    我的理论是,细胞样式以某种方式被破坏为日期格式 . 所以现在我避免使用指定数字格式的单元格样式 . 可能还有其他方法可以解决这个问题,但这对我有用 .

    听起来很疯狂,但确实如此 . 我们现在有一个稳定的工作簿,但修复所有这些工作是一项巨大的投资 .

    一些相关的页面

    Excel 2007 spontaneously formats entire work book in date format

    Similar problem

    Similar problem

    Stop automatically changing numbers to dates

相关问题