Å vite hvordan du bruker Excel sin makroer for å tvinge beregning av et regneark sikrer at formlene i arbeidsbøkene produserer nøyaktige verdier . Excel beregner automatisk formler som standard, noe som kan resultere i lang saksbehandlingstid for arbeidsbøker med mange formler . Skifte til manuell beregning løser dette problemet , men skaper problemet med unøyaktige formler. Excel VBA-makroer kan gjenopprette , enten midlertidig eller permanent, automatisk beregning . En fordel ved å bruke makroer for å rekalkulere i motsetning til å re- aktivere automatisk beregning alternativet er at du kan velge nøyaktig hvilke celler til å beregne , som unngår forsinkelser skapt ved å beregne en hele regnearket . Instruksjoner
en
Klikk på " File" -menyen er " Alternativer"-knappen , og klikk deretter på " formler "-linken. Klikk på " Manual" alternativet, og deretter "OK" for å lukke " Alternativer" i dialogboksen . Dette trinnet slås av automatisk beregning , som makroen vil gjenopprette
2
Skriv inn følgende i celle A1 til C1 i gjeldende regneark : . 5 , 10 , " . = A1 * a2 " Legg merke til at formelen i C1 er feil , på grunn av valget av det manuelle alternativet i trinn en . Makroen vil gjenopprette automatisk beregning .
3
Klikk på " Utvikler " fanen " Visual Basic" -knappen for å gå inn i Visual Basic programmering miljø . Lim inn følgende program i vinduet som vises . Dette programmet bruker " Range " objekt å skrive inn verdier i to forskjellige regneark celler , og en formel i en annen celle . Programmet har to uttalelser som tvinger gjeldende regneark for å oppdatere sin beregning. Den første er " Application.Calculation = xlCalculationAutomatic . " Denne uttalelsen setter " Beregning " eiendom i Excel- programmet selv . Den andre er den som ringer på " Beregn " funksjon " ActiveSheet " objekt . Denne uttalelsen forteller bare det aktive arket for å beregne, ikke hele arbeidsboken .
Public Sub Recalc ( )
' inn tall i en celle
' Enter en calulation som avhenger på de tallene
'Force rekalkulering
Application.Calculation = xlCalculationAutomatic
Range (" a1 " ) = 5
Range (" a2 ") = 10