Excel 对象模型,Value2 是特定于文化的吗?

Posted

技术标签:

【中文标题】Excel 对象模型,Value2 是特定于文化的吗?【英文标题】:Excel Object Model, will Value2 be culture specific? 【发布时间】:2014-06-24 17:21:57 【问题描述】:

在我的电脑上我有英文版(美国)Excel 2013 我将地区更改为德国,将值“550,66231278”设置为 Excel 中的单元格 当我阅读 cell.Value2 时,我在 Visual Studio 中看到它是“550.66231278”

所以我想知道 Value2 是始终采用美国文化格式还是特定于文化 比如说,如果我安装德国版的 Excel,Value2 将是“550,66231278”?

谢谢

【问题讨论】:

“我在 Visual Studio 中看到” - 您的意思是在使用 VS 创建的某些应用程序中或在调试器本身中。因为调试器通常对像 '1.123' 这样的浮点值使用中性文化。 如果它在某个应用程序中,那么你确定它(应用程序)使用了德国文化和UICulture? @Eugene,是的,我在 VS 中创建了一个应用程序并在 VS 中调试它。所以你的意思是这是 b/c VS 使用中性文化?我的视觉工作室是英文(美国)版本。 我不确定,但尝试在应用程序中将此值输出到某个文本框或标签中。 【参考方案1】:

MSDN 说:

此属性与 Value 属性之间的唯一区别是 Value2 属性不使用 Currency 和 Date 数据类型。 您可以将使用这些数据类型格式化的值返回为 使用 Double 数据类型的浮点数。

所以最有可能的是,在应用程序的调试或使用过程中,您的值以 CultureNeutral 的方式显示。尝试在您的应用中使用change culture and possibly UICulture。

【讨论】:

以上是关于Excel 对象模型,Value2 是特定于文化的吗?的主要内容,如果未能解决你的问题,请参考以下文章

FCM 令牌是特定于应用程序还是设备?

[][] 的含义是特定于上下文的吗?

PytzUsageWarning:zone 属性是特定于 pytz 的接口的;请迁移到新的时区提供商

Javascript对象初始化和评估顺序[重复]

Core ML 和 Turi Create 使用啥模型?

多次使用 SaveAs 会冻结 Excel