Convert procedual to oo

tiredofit

Well-known Member
Joined
Apr 11, 2013
Messages
1,832
Office Version
  1. 365
  2. 2019
Platform
  1. Windows
I have a chart on a worksheet and two associated controls.

One is a spin button that controls the starting point of my data. The other is a value in a cell that specifies the range of the data to plot the chart.

For example, if the Spin button value is 20 and the range of data value is 30, that means the chart starts at point 20 and contains values up to point 49.

The code below works fine:

Standard Module:

Code:
Option Explicit

Sub Macro1()
   
    Dim Interval As Long
   
    Interval = wksData.Cells(19, 6).Value
   
    Dim DataStart As Long
   
    DataStart = wksData.Cells(19, 13).Value
   
    ActiveSheet.ChartObjects("Chart 1").Activate
    ActiveChart.FullSeriesCollection(1).XValues = Range(wksData.Cells(DataStart + 1, 1), wksData.Cells(DataStart + Interval, 1))
    ActiveChart.FullSeriesCollection(1).Values = Range(wksData.Cells(DataStart + 1, 2), wksData.Cells(DataStart + Interval, 2))

End Sub

In wksData:

Code:
Private Sub SpinButton1_Change()
    
    Call Module1.Macro1
    
End Sub


What I want to know is how can I turn it into an object oriented way?

Obviously I'll need some classes but I cannot see what I should put into a standard module and what should be in a class.

Any help greatly appreciated.
 

Excel Facts

Show numbers in thousands?
Use a custom number format of #,##0,K. Each comma after the final 0 will divide the displayed number by another thousand

Forum statistics

Threads
1,214,945
Messages
6,122,397
Members
449,081
Latest member
JAMES KECULAH

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top