Keep in mind that hosted VBA code is compiled to p-code, not native code, and this incurs a slight performance penalty, although running in process enables optimized method calls to Office objects.
You could add a new method to the DAO object, let's say updateEmployeeOffice , that would only update the office information for an employee, instead of updating all the nodes previously fetched.