VBA Excel Recalcule Sélection

J'ai des feuilles de calcul Excel sur la base de données assez dur (+de 100 requêtes par rapport à la comptabilité générale de la table... oups!). Rafraîchissant juste la feuille je suis sur (SHIFT+F9) est utile dans certains des feuilles de calcul, mais je voulais un moyen d'actualiser seulement les cellules sélectionnées. Je suis venu avec le code suivant, placé dans l'objet ThisWorkbook:

Dim currentSelection As String

Private Sub Workbook_Open()
    Application.OnKey "+^{F9}", "ThisWorkbook.RecalculateSelection"
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    currentSelection = Target.Address
End Sub

Private Sub RecalculateSelection()
    Range(currentSelection).Calculate
End Sub

Si possible, j'aimerais le rendre plus portable, tels que de les stocker dans un fichier XLA et le chargeant comme un complément Excel. Est-ce possible avec la méthode que j'utilise? Est-il un meilleur moyen pour y parvenir?

OriginalL'auteur Scott | 2009-12-16