Try some of this code - got most of it from the net so it's not tested:
vb6:
Public xlApp As Object
Public xlWbk As Object
Private Sub Command1_Click()
On Error Resume Next
Set xlApp = CreateObject("Excel.Application")
If xlApp Is Nothing Then
MsgBox "Unable to start Excel."
Exit Sub
End If
On Error GoTo 0
Set xlWbk = xlApp.Workbooks.Open("F:\book.xls")
With xlWbk.Sheets(1)
.Range("A1") = "This is an opened instance of Book.xls."
End With
' Run macro placed in Excel
xlApp.Run "myMacro"
' xlApp.Visible = True 'If you do not want it to show then remove this line
xlApp.Quit 'will close the newly created XL instance
Set xlWbk = Nothing
Set xlApp = Nothing
End Sub
To test it try first saving a macro named myMacro in the workbook, e.g.:
MsgBox "Working"
With regards to printdesign I'd recommend you use the macroeditor to get the necessary code. When satisfied place the code in the macro you call from VB6.
Ref.:
http://www.mrexcel.com/archive2/60500/70091.htm