MartyConnelly
martyconnelly at shaw.ca
Mon Aug 7 13:27:02 CDT 2006
Err the Object Browser should tell you the data type being returned.
if you have the reference set.
MartyConnelly wrote:
>If you are setting it, you must be returning an object rather than a
>variant.
>Set a reference to bartender and look at the values in the Object Browser
>libary for Bartender to see what they should be set to.
>
>Rocky Smolin - Beach Access Software wrote:
>
>
>
>>Marty:
>>
>>I deleted the Reference to Bartender and changed the declarations to:
>>
>>Public BtApp As Object 'BarTender.Application
>>Public BtFormat As Variant 'BarTender.Format
>>
>>In the load event I put:
>>
>>Set BtApp = CreateObject("BarTender.Application")
>>In the Print event however, on the line
>>
>>Set BtFormat = BtApp.Formats.Open(Me.fldFABLabelFile)
>>
>>I get an 'argument not optional' error. With the old declarations it
>>worked. Any idea what's going wrong?
>>
>>Thanks and regards,
>>
>>Rocky
>>
>>
>>MartyConnelly wrote:
>>
>>
>>
>>
>>>You are mixing Early and Late Binding methods
>>>First remove the reference
>>>Then just change your declarations to things like
>>>
>>>Public BtApp As Object 'BarTender.Application
>>>Public BtFormat As String 'BarTender.Format
>>>
>>>
>>>If you are unsure of the type returned try using a variant
>>>especially in the case of returned arrays.
>>>
>>>or leave both types in and do a conditional compile around them
>>>
>>>#Const DebugVersion = 0
>>>
>>>#if DebugVersion = 1 then
>>> Dim wa as BarTender.Application
>>> Set wa = new BarTender.Application
>>>#else
>>> Dim wa as Object
>>> set wa = createobject ("BarTender.Application")
>>>#endif
>>>You'l have to set the flag to 1
>>> (#Const DebugVersion = 1)
>>>and then add a reference to Bartender
>>>for the debug intellisence to work..
>>>
>>>Then to check if Bartender is actually installed on the machine
>>>
>>> On Error Resume Next
>>>Set objExcelapp = CreateObject("BarTender.Application")
>>>If Err.Number Then
>>> MsgBox "Bartender not installed or not registered for Automation"
>>> Exit Sub
>>> End If
>>>'reset error
>>>
>>>
>>>
>>>
>>>Rocky Smolin - Beach Access Software wrote:
>>>
>>>
>>>
>>>
>>>
>>>
>>>>Dear List:
>>>>
>>>>I have a client who prints bar coded labels through an application
>>>>called Bartender (cute, huh?). I wrote a production management system
>>>>for them which contains all the information in the db that they are
>>>>inputting manually into Bartender. So the client asked me to add a
>>>>function to the app to run Bartender from the production system and that
>>>>is working great.
>>>>
>>>>To do this I downloaded and installed the trial version of Bartender and
>>>>so was able to set a reference to it in the VBA code so I could run
>>>>Bartender from the client's app (stuff like Public BtApp As
>>>>BarTender.Application and Public BtFormat As BarTender.Format and Set
>>>>BtApp = CreateObject("BarTender.Application")).
>>>>
>>>>Problem is that the app won't run on any machine which doesn't have
>>>>Bartender loaded - it gets a broken reference error when the app opens.
>>>>
>>>>So I'm wondering how to handle this. Perhaps I unset the reference in
>>>>the Tools-->References and set it when the bar code form opens? Or is
>>>>there a way to trap and get around this error when the app loads?
>>>>
>>>>What's the best way to handle this?
>>>>
>>>>MTIA,
>>>>
>>>>Rocky
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>>
>
>
>
--
Marty Connelly
Victoria, B.C.
Canada