2013-04-07 15 views
0

假設你有一個Excel工作簿中,你需要編寫一個宏,在許多不同的單元格引用,需要從許多不同的單元格引用輸入和更新的價值觀,你怎麼了保持代碼整潔和可維護?Excel的VBA - 如何處理多個單元格引用,而無需創建一個爛攤子

這將有助於瞭解:

  • 最佳實踐
  • 有用的技巧
  • 不可避免的困難
  • 必要權衡

如果有鏈接到現有指南,或討論也會有幫助。我一直無法找到任何。

編輯:我發現http://www.eusprig.org/best-practice.htm非常有用 - 從歐洲電子表格風險興趣小組(EuSPRIG)。

+1

我認爲這將是更合適的位置:http://codereview.stackexchange.com/ – mango 2013-04-07 23:43:53

+1

** [此鏈接](http://spreadsheetsuperstar.com/vba-code-good-bad -ugly /)**可能對基礎級別有幫助。我做的事情:宣佈我所有的變數;使用命名範圍和有意義的變量名稱;重新組織表格以便像事物一樣分組(輸入,常數,輸出等);在單獨的代碼塊中讀取和寫入表單;對於在組織良好的工作表中無法完成的事情,只能轉向VBA。 – chuff 2013-04-08 00:18:58

+1

不是真的堆棧溢出問題。 – brettdj 2013-04-08 01:57:41

回答

1

稍微取決於OM什麼宏要做的事情,但我用「計算」​​張,我在那裏聚集在一起,我需要宏觀數據,並輸出結果出現。

我傾向於做這做定義的範圍。

結果數據可以從別處引用。

技巧:有一件事我做的是創造,因爲它是用於每一塊的輸入數據的可視化的「覈對」。這使我能夠確保所有我認爲我將要使用的數據,我已經使用過。

+0

謝謝。這是我要做的方法。類似於模型 - 視圖 - 控制器方法。 – WoodenKitty 2013-04-11 23:41:49

0

以下命名標準是更好的解決方案,語言的irrespictve。

  • in_name_range,out_name_range
  • in_num_range,out_num_range

    • 檢查點和增加的手錶,肯定會有所幫助。

    • 如果你要爲模塊化,保重有關更新的範圍 (正如你不能在一些板材一些預定義的順序一次返回多個值好寫的範圍。這對我的作品。)

相關問題