Sub Main
'Declare the variable that references the application
 Dim GrapherApp As Object

 'Creates an instance of the Grapher Application object
 'and assigns it to the variable named "GrapherApp"
 Set GrapherApp = CreateObject("Grapher.Application")

 'Make Grapher visible
 GrapherApp.Visible = True

 'Assigns the Documents collection to the variable named "Docs"
 Set Docs = GrapherApp.Documents

 'Defines the files to work with
 datafile$ = GrapherApp.Path+"\samples\tutorial.dat"
 template$ = GrapherApp.Path+"\templates\line scatter plot.grt"

 'Open the worksheet
 Set Wks = Docs.Open(datafile$)

 'Read the contents of a cell for text
 Text1 = Wks.Cells("A1")

 'Read the contents of a cell for Y axis maximum value
 WksYMax = Wks.Cells("B9").Value

 'Creates a new plot window and assign it to the variable named "Plot"
 Set Plot = Docs.Add(grfPlotDoc,template$,datafile$)

'Add text read from the text string in the worksheet
Plot.Shapes.AddText(2.5,6,Text1)

'Sets variables for Y Axis 1 and X Axis 1
Set YAxis1 = Plot.Shapes.Item("Graph 1").Axes.Item("Y Axis 1")
Set XAxis1 = Plot.Shapes.Item("Graph 1").Axes.Item("X Axis 1")

'Change the Y axis maximum based on the worksheet value
YAxis1.AutoMax = False
YAxis1.Max = WksYMax

'Updates the worksheet for the linked text axis titles
XAxis1.title.worksheet = datafile$
YAxis1.title.worksheet = datafile$

'Set TickLabels.MajorFormat.NumDigits
XAxis1.TickLabels.MajorFormat.NumDigits = 0

'Adjusts the TickMarks major spacing
XAxis1.Tickmarks.MajorSpacingAuto = False
XAxis1.Tickmarks.MajorSpacing = 1

'Set TickMarks.MinorSide
XAxis1.Tickmarks.MinorSide = grfTicksOff

End Sub
