Weten hoe u met de Excel-macro's herberekening van een werkblad zorgt ervoor dat de formules in uw werkmappen nauwkeurige waarden produceren. Excel worden formules automatisch berekent standaard, die in lange doorlooptijden voor werkmappen met veel formules resulteren kan. Over te schakelen naar handmatige berekening is dit probleem opgelost, maar het probleem van onjuiste formules creëert. Excel VBA-macro's kunt herstellen, tijdelijk of permanent, automatische berekening. Een voordeel aan het gebruik van macro's om het herberekenen in tegenstelling tot het opnieuw inschakelen van de optie automatische berekening is dat u precies welke cellen kunt moeten worden herberekend, die vermeden de tijdvertragingen gemaakt door berekening nl hele werkblad.
Het "File" menu "Options" knop, klik op de link "Formules". Klik op de optie "Manual" "OK" om te sluiten van het dialoogvenster 'Opties'. Deze stap schakelt automatische berekening, die de macro zal herstellen.
Typ het volgende in cellen A1 tot C1 van het huidige werkblad: 5, 10, "= a1 * a2." Merk op dat de formule in C1 onjuist, als gevolg van uw selectie van de handmatige optie in stap 1 is. Uw macro zal herstellen automatische berekening.
Klik op de 'Developer' tabblad van 'Visual Basic' Voer de programmeeromgeving van Visual Basic. Plak het volgende programma in het venster dat verschijnt. De "Range"-object gebruikt voor het invoeren van waarden in twee verschillende werkbladcellen en een formule naar een andere cel. Het programma heeft twee uitspraken die kracht van het huidige werkblad bijwerken haar berekening. De eerste is "Application.Calculation = xlCalculationAutomatic." Deze instructie stelt de eigenschap "Berekening" van de Excel-toepassing zelf. De tweede is het aanroepen van de functie "Berekenen" van het "ActiveSheet"-object. Deze instructie vertelt alleen het actieve werkblad te berekenen, niet de hele werkmap.
Public Sub recalc()
' Getallen in een cel invoeren
' Voer een calulation die afhankelijk van die nummers
' Herberekening
Application.Calculation = xlCalculationAutomatic
Range("a1") = 5
Range("a2") = 10
Range("a3"). Formule = "= a1 * a2"
ActiveSheet.Calculate
End Sub
Druk op "F5" het programma uit te voeren.
Klik op de "Excel"-pictogram op de taakbalk van Windows om terug te keren naar Excel. Merk op dat de cel A3 heeft een functie die vereist bijgewerkte wordt berekend dat, en dat het resultaat van de berekening, het product van het werkblad de bovenste twee cellen, nauwkeurig is.