使长variables在64位和32位Excel VBA中工作

我有一个相当复杂的Excel VBA项目,在32位系统上运行良好,现在我正试图使它在64位系统上也能工作。 我已经解决了所有的函数声明,但仍然得到一些与Long数据types的问题。

做一些研究,我想出了这个(从MSDN页面):

LongPtrparsing的实际数据types取决于它所运行的Office的版本: LongPtr在32位版本的Office中parsing为LongLongPtr在64位版本的Office中parsing为LongLong

但这是否意味着我可以改变我所有的Dim语句

 Dim x as Long 

 Dim x as LongPtr 

我应该到处做吗? 或者我得到了棍棒的错误结局? 有没有什么情况可以避免这种变化?

试试LongLong。 从规格看来,LongLong看起来像是32型的替代品,而是Long型的。