2010-09-29 48 views
3

這是我父親的問題。他在Excel中使用VBA超過二十年,從Excel 5直到今天他正在使用Excel 2002。Excel新版本中的VBA

由於他在Excel中使用VBA這麼久,大量使用了記錄宏,他繼續投資於Excel,因爲它在每個版本中都相當穩定(就其VBA功能而言)。現在,他正在考慮升級到更新版本的Excel,但是我已經閱讀過評論,微軟在Excel 2007中完全篡改了他們的VBA解釋器,因爲以前在Excel 2003或更早版本中工作的腳本會變得非常緩慢或完全停止運行。然後查看Excel 2010,我已經讀過很多Excel 2007的問題「尚未修復」。由於我不確定這些評論的可信度,我已閱讀我提出的這個問題對於所有那些目前在Excel中大量使用VBA的人來說:

對於某人在Excel 2002或更早的版本中投入了大量時間和精力投入到VBA中以升級到Excel 2003,2007或2010?

回答

5

Excel 2007 VBA有幾個性能問題。其中很多已在Excel 2007 SP1中修復。圖表和形狀也有一些宏記錄器問題。

我個人的建議是Excel 2010:VBA性能和宏記錄器問題已得到解決,我發現Excel 2010的整體穩定性優於最新版本(但是YMMV)。

從Excel 2002遷移到2007或2010將涉及學習使用功能區:一些人喜歡它,有些人討厭它,但它肯定需要爲長期Excel用戶付出努力。請注意,VBA IDE沒有改變。

2

如果您的父親在遷移到Excel 97後倖存下來,切換到2007年或2010年將感覺像一個蛋糕走路。除了新的圖形用戶界面,這些變化是更好的變化。我沒有遇到任何兼容性問題,包括從97年到2003年的大跳。

爲了獲得最新信息,我建議John Green等人的Excel 2007 VBA程序員參考。

0

我在Excel 2003中開發的大多數VBA/Excel程序在2007年工作得很好,沒有修改就更新(看起來我記得大多數問題都是與圖表有關的)。當然,至少有一些錄製的宏或手工編碼的VBA在Excel 2007和更新的版本中可能不起作用。然而,只需稍加調試,舊代碼就可以轉換,而不會造成太多頭痛(搜索錯誤的行,並且您可能會發現如何重寫該行)。

有免費的加載項,如UBitMenu和其他人帶回舊式菜單菜單。

今年早些時候,我爲Excel VBA編寫了一個基準測試,其中包含6個不同的性能測試。到目前爲止,已有373人提交的結果清楚地表明,2007年的Excel是所有版本中速度最慢的。在Excel 2003,2007,2003,2002中,Excel 2010在大多數測試中表現最佳,其次是Excel 2003。在2010年到2003年間,複合結果非常接近,但單個基準測試表明Excel 2003在顯示數據時速度更快而基於複雜的VBA計算,2010年更快。基準的完整結果位於http://exceltrader.net/et2/benchMark.php