I turned off the debugger and tried the same code and it flickers between the books. But that shouldn't alter the way it works when a routine / function is run.
To evaluate this better, can you post a sample file which replicates the scenarios you explained above?
I have VBA code that works under windows 7 and excel 2013.
It sets application.screenupdating to false just before every windows (filename).activate function.
When my macro runs i get a message Word is updating the field codes in the document. Then place the names of travel expenses in say D5 and training expenses in F5.
Screen Updating = FALSE at the begininnig and turn it back on at the end but it still making the screen show everything can anyone help. Open Filename:= _ "P: OFFICERisk OPTIONSOptions Control Function Risk Analysis emplate euribor risk module.xls" Windows("Euribor risk module.xls"). I have tried moving the screenupdating, displayalerts, displaystatusbar to different parts of the doc but i still get this. Display Status Bar = False For Each o Story In Current Doc. (that doesn't let you turn off screen updating..least I haven't found a way to do so for debuggin in 2007)Hey Malik thanks for your reply. Text End With Unload frm Title Set frm Title = Nothing Call Update Story Ranges(Active Document) Call Sheet Print Out Application. Sub Update Story Ranges(Current Doc As Document) 'Loop to update the main body of the document Application. Story Ranges 'Update the all the Form Fields o Story. Just to confirm i am working in office 2003 and currently not running in debug mode. Screen Updating = True End Sub Sub Sheet Print Out() Dim a Doc As Document Dim b Doc As Document Dim o XL2 As Excel. Visible = True here; but your code will 'run faster if you don't make it visible 'Open the workbook Set o WB = o XL. Open(File Name:=Workbook To Work On) Set o Sheet = o WB. Everytime it offsets it opens the cell value say c:\forms\travel expenses ; if travel expenses is in the cell. Screen Updating = False Workbook To Work On = "C:\forms\index.xls" 'If Excel is running, get a handle on it; otherwise start a new instance of Excel On Error Resume Next Set o XL = Get Object(, "Excel. Number 0 Then Excel Was Not Running = True Set o XL = New Excel. Screen Updating = False End If On Error Go To Err_Handler 'If you want Excel to be visible, you could add the 'line: o XL. When the macro is called for May2008, May2008 is found in say C5 and offsetting of cells will take place.