This is the code :
Sub Charter()
Rows("1:3").Delete
Columns(1).EntireColumn.Delete
Columns("A").Insert
Columns("C").Copy Columns("A")
Columns("C").Delete
With Range("A:A")
    .Value = Evaluate(.Address & "*25.51")
End With
With Range("B:B")
    .Value = Evaluate(.Address & "*50")
End With
With Range("D:D")
    .Value = Evaluate(.Address & "*30.12")
End With
Dim rngDataSource As Range
Dim iDataRowsCt As Long
Dim iDataColsCt As Integer
Dim iSrsIx As Integer
Dim chtChart As Chart
Dim srsNew As Series
Columns("A:D").Select
If Not TypeName(Selection) = "Range" Then
    '' Doesn't work if no range is selected
    MsgBox "Please select a data range and try again.", _
        vbExclamation, "No Range Selected"
Else
    Set rngDataSource = Selection
    With rngDataSource
        iDataRowsCt = .Rows.Count
        iDataColsCt = .Columns.Count
    End With
    If iDataColsCt Mod 2 > 0 Then
        MsgBox "Select a range with an EVEN number of columns.", _
            vbExclamation, "Select Even Number of Columns"
        Exit Sub
    End If
    '' Create the chart
    Set chtChart = ActiveSheet.ChartObjects.Add( _
        Left:=ActiveSheet.Columns(ActiveWindow.ScrollColumn).Left + _
            ActiveWindow.Width / 4, _
        Width:=ActiveWindow.Width / 2, _
        Top:=ActiveSheet.Rows(ActiveWindow.ScrollRow).Top + _
            ActiveWindow.Height / 4, _
        Height:=ActiveWindow.Height / 2).Chart
    With chtChart
        .ChartType = xlXYScatterSmoothNoMarkers
        '' Remove any series created with the chart
        Do Until .SeriesCollection.Count = 0
            .SeriesCollection(1).Delete
        Loop
        For iSrsIx = 1 To iDataColsCt - 1 Step 2
            '' Add each series
            Set srsNew = .SeriesCollection.NewSeries
            With srsNew
                .Name = rngDataSource.Cells(1, iSrsIx + 1)
                .Values = rngDataSource.Cells(2, iSrsIx + 1) _
                    .Resize(iDataRowsCt - 1, 1)
                .XValues = rngDataSource.Cells(2, iSrsIx) _
                    .Resize(iDataRowsCt - 1, 1)
            End With
        Next
    End With
End If
End Sub
There are supposed to be 4 columns A,B,C and D as a result of the first few lines of this code (used to change up an existing excel sheet format). I am trying to graph the Columns B,C and D against Column A as the x axis. But my result right now only shows 2 series instead of 3, and seems to have got the axis wrong. What is the error in the logic?
 
     
     
    