Re: Difference between NEW and CREATEOBJECT?
From: Mark (no_at_email.com)
Date: 02/19/04
- Next message: Andy W: "Using Filters, Copy + Paste in a Macro #2"
- Previous message: Dave M: "Window;1 doesn't display"
- In reply to: Bob Phillips: "Re: Difference between NEW and CREATEOBJECT?"
- Next in thread: Tom Ogilvy: "Re: Difference between NEW and CREATEOBJECT?"
- Reply: Tom Ogilvy: "Re: Difference between NEW and CREATEOBJECT?"
- Messages sorted by: [ date ] [ thread ]
Date: Thu, 19 Feb 2004 13:07:28 +0100
Thanks for the detailed answer
I will then use new as often as i can
Regards
Mark
"Bob Phillips" <bob.phillips@notheretiscali.co.uk> wrote in message
news:%23F6$pit9DHA.1948@TK2MSFTNGP12.phx.gbl...
> Mark,
> New uses early binding. When you declare something As the particular
object
> type, and use the New keyword, you are telling the compiler to go through
> the specific library interface to that object. Because you've referenced
> this in the VBA Tools>References settings, the compiler can read the
typelib
> file, and knows how to "talk" to that object. Because this is done at
> compile time, not run time, execution is much faster.
>
> CreateObject uses late-binding. When you declare something As Object and
use
> CreateObject, VBA has no idea what object you're dealing with. Thus, the
> compiler has to go through the IUnknown interface. This returns an array
of
> pointers to all the other interfaces supported by the object. Once those
> interface pointers are known, VBA then goes through IDispatch to determine
> the specific property or method to actually call .All of this takes a
great
> deal of system overhead and can make your code execute substantially
slower.
>
> In Summary, New is quicker, and provides IntelliSense when developing, but
> requires the type library to be linked.joined/referenced (whatever you
want
> to call it) to your project. CreateObject is slower, requires more on the
> developer's part (you need to know library constant values for instance),
> but can be more flexible, especially when distributing to multiple
platforms
> where there may be different versions of the library.
>
> --
>
> HTH
>
> Bob Phillips
> ... looking out across Poole Harbour to the Purbecks
> (remove nothere from the email address if mailing direct)
>
> "Mark" <no@email.com> wrote in message
> news:c122hd$8oq$1@news.net.uni-c.dk...
> > Hi NG
> >
> > Just a newbie question.
> >
> > What is the difference between NEW and CREATEOBJCT ?
> >
> > The following two lines of code seems to do the same!
> >
> > Set xmlStr = CreateObject("Microsoft.XMLDOM")
> > Set xmlStr = New DOMDocument
> >
> > Is there any performance issues in using the one instead of the other?
> >
> > Regards
> > Mark
> >
> >
>
>
- Next message: Andy W: "Using Filters, Copy + Paste in a Macro #2"
- Previous message: Dave M: "Window;1 doesn't display"
- In reply to: Bob Phillips: "Re: Difference between NEW and CREATEOBJECT?"
- Next in thread: Tom Ogilvy: "Re: Difference between NEW and CREATEOBJECT?"
- Reply: Tom Ogilvy: "Re: Difference between NEW and CREATEOBJECT?"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|