Link Search Menu Expand Document

Add Stock Chart - VB.NET

Spreadsheet SDK sample in VB.NET demonstrating ‘Add Stock Chart’

Module1.vb
Imports Bytescout.Spreadsheet
Imports Bytescout.Spreadsheet.Charts


Module Module1

    Sub Main()

        ' Create new Spreadsheet object
        Dim spreadsheet As New Spreadsheet()
        spreadsheet.RegistrationName = "demo"
        spreadsheet.RegistrationKey = "demo"

        ' Add new worksheet
        Dim sheet As Worksheet = spreadsheet.Workbook.Worksheets.Add("Sample")

        ' Add few random numbers
        For i As Integer = 1 To 5
            sheet(i, 0).Value = 39082 + i
            sheet(i, 0).ValueDataTypeByNumberFormatString = Bytescout.Spreadsheet.Constants.NumberFormatType.DateTime
        Next

        sheet(1, 1).Value = 41301
        sheet(1, 2).Value = 24.3
        sheet(1, 3).Value = 27.2
        sheet(1, 4).Value = 23.49
        sheet(1, 5).Value = 25.45
        sheet(2, 1).Value = 35203
        sheet(2, 2).Value = 25.4
        sheet(2, 3).Value = 25.03
        sheet(2, 4).Value = 19.55
        sheet(2, 5).Value = 23.05
        sheet(3, 1).Value = 27908
        sheet(3, 2).Value = 23
        sheet(3, 3).Value = 19.05
        sheet(3, 4).Value = 15.12
        sheet(3, 5).Value = 17.32
        sheet(4, 1).Value = 29567
        sheet(4, 2).Value = 17.3
        sheet(4, 3).Value = 20.33
        sheet(4, 4).Value = 17.84
        sheet(4, 5).Value = 20.45
        sheet(5, 1).Value = 25895
        sheet(5, 2).Value = 20.4
        sheet(5, 3).Value = 18.56
        sheet(5, 4).Value = 16.33
        sheet(5, 5).Value = 17.35

        ' Add charts to worksheet
        Dim stockChart As Chart = sheet.Charts.AddChartAndFitInto(7, 1, 26, 9, ChartType.StockHLC)
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 3, 5, 3)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 4, 5, 4)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 5, 5, 5)))

        stockChart = sheet.Charts.AddChartAndFitInto(7, 10, 26, 18, ChartType.StockOHLC)
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 2, 5, 2)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 3, 5, 3)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 4, 5, 4)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 5, 5, 5)))

        stockChart = sheet.Charts.AddChartAndFitInto(28, 1, 46, 9, ChartType.StockVHLC)
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 1, 5, 1)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 3, 5, 3)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 4, 5, 4)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 5, 5, 5)))

        stockChart = sheet.Charts.AddChartAndFitInto(28, 10, 46, 18, ChartType.StockVOHLC)
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 1, 5, 1)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 2, 5, 2)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 3, 5, 3)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 4, 5, 4)))
        stockChart.SeriesCollection.Add(New Series(sheet.Range(1, 5, 5, 5)))

        ' Save it as XLS
        spreadsheet.SaveAs("Output.xls")

        ' Close the document
        spreadsheet.Close()

        ' Cleanup
        spreadsheet.Dispose()

        ' Open generated XLS file in default associated application
        Process.Start("Output.xls")

    End Sub

End Module

Resources.Designer.vb
��'------------------------------------------------------------------------------

' <auto-generated>

'     This code was generated by a tool.

'     Runtime Version:2.0.50727.42

'

'     Changes to this file may cause incorrect behavior and will be lost if

'     the code is regenerated.

' </auto-generated>

'------------------------------------------------------------------------------



Option Strict On

Option Explicit On





Namespace My.Resources

    

    'This class was auto-generated by the StronglyTypedResourceBuilder

    'class via a tool like ResGen or Visual Studio.

    'To add or remove a member, edit your .ResX file then rerun ResGen

    'with the /str option, or rebuild your VS project.

    '<summary>

    '  A strongly-typed resource class, for looking up localized strings, etc.

    '</summary>

    <Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0"),  _

     Global.System.Diagnostics.DebuggerNonUserCodeAttribute(),  _

     Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(),  _

     Global.Microsoft.VisualBasic.HideModuleNameAttribute()>  _

    Friend Module Resources

        

        Private resourceMan As Global.System.Resources.ResourceManager

        

        Private resourceCulture As Global.System.Globalization.CultureInfo

        

        '<summary>

        '  Returns the cached ResourceManager instance used by this class.

        '</summary>

        <Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)>  _

        Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager

            Get

                If Object.ReferenceEquals(resourceMan, Nothing) Then

                    Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("VB.NET.Resources", GetType(Resources).Assembly)

                    resourceMan = temp

                End If

                Return resourceMan

            End Get

        End Property

        

        '<summary>

        '  Overrides the current thread's CurrentUICulture property for all

        '  resource lookups using this strongly typed resource class.

        '</summary>

        <Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)>  _

        Friend Property Culture() As Global.System.Globalization.CultureInfo

            Get

                Return resourceCulture

            End Get

            Set(ByVal value As Global.System.Globalization.CultureInfo)

                resourceCulture = value

            End Set

        End Property

    End Module

End Namespace


Settings.Designer.vb
��'------------------------------------------------------------------------------

' <auto-generated>

'     This code was generated by a tool.

'     Runtime Version:2.0.50727.42

'

'     Changes to this file may cause incorrect behavior and will be lost if

'     the code is regenerated.

' </auto-generated>

'------------------------------------------------------------------------------



Option Strict On

Option Explicit On





Namespace My



    <Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(),  _

     Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0"),  _

     Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)>  _

    Partial Friend NotInheritable Class MySettings

        Inherits Global.System.Configuration.ApplicationSettingsBase

        

        Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)

        

#Region "My.Settings Auto-Save Functionality"

#If _MyType = "WindowsForms" Then

        Private Shared addedHandler As Boolean



        Private Shared addedHandlerLockObject As New Object



        <Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _

        Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)

            If My.Application.SaveMySettingsOnExit Then

                My.Settings.Save()

            End If

        End Sub

#End If

#End Region

        

        Public Shared ReadOnly Property [Default]() As MySettings

            Get

                

#If _MyType = "WindowsForms" Then

                   If Not addedHandler Then

                        SyncLock addedHandlerLockObject

                            If Not addedHandler Then

                                AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings

                                addedHandler = True

                            End If

                        End SyncLock

                    End If

#End If

                Return defaultInstance

            End Get

        End Property

    End Class

End Namespace



Namespace My

    

    <Global.Microsoft.VisualBasic.HideModuleNameAttribute(),  _

     Global.System.Diagnostics.DebuggerNonUserCodeAttribute(),  _

     Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()>  _

    Friend Module MySettingsProperty

        

        <Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")>  _

        Friend ReadOnly Property Settings() As Global.VB.NET.My.MySettings

            Get

                Return Global.VB.NET.My.MySettings.Default

            End Get

        End Property

    End Module

End Namespace


Download Source Code (.zip)

Return to the previous page Explore Spreadsheet SDK