I notice com programs sometimes use New and then sometimes not.I understand the new syntax to return the reference of an object with C++ I think this is the same with VB however some times vbCom&#039s do not use New ,I&#039ve read that they do not need this if the COM object is provided within the same Dll, but then again I&#039ve come across programs that use this syntax <BR>Dim Confused AS Explain.Please <BR>Set Confused = CreateObject("Explain.Please") <BR><BR>Why the CreateObject couldnt we just go ahead and say <BR>Set Confused = Explain.Please or just use it without the create object bit Since in this case Explain.Please exists within the same Dll <BR>Another things why do they sometimes use <BR>Dim objConn AS ADODB.Connection <BR>Set objConn = New ADODB.Connection <BR><BR>and then sometimes omit the <BR>Set objConn = New ADODB.Connection <BR>I would really like