Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Dim i As Long
- Dim LastRow As Long
- Dim LastColumn As Long
- Dim cht As Chart
- LastRow = Range("A65536").End(xlUp).row
- LastColumn = Range("A1").End(xlToRight).Column
- For i = 2 To LastRow
- Dim location As String
- Range("$A$i:$LastColumn").Select
- ActiveSheet.Shapes.AddChart.Select
- ActiveChart.ChartType = xlLine
- ActiveChart.SetSourceData Source:=Range("Sheet1!$A$i:$LastColumn")
- With ActiveChart.Parent
- .Height = 225 ' resize
- .Width = 500 ' resize
- ActiveChart.ChartArea.Copy
- Sheets("Sheet2").Select
- ActiveSheet.Pictures.Paste.Select
- Sheets("Sheet1").Select
- Application.Run ("DeleteEmbeddedCharts")
- End With
- Next i
- End Sub
- Sub main()
- 'variable declaration
- Dim i As Long
- Dim LastRow As Long
- Dim LastColumn As Long
- Dim chrt As Chart
- 'Find the last used row
- LastRow = Sheets("Sheet1").Range("A65536").End(xlUp).Row
- 'Find the last used column
- LastColumn = Sheets("Sheet1").Range("A1").End(xlToRight).Column
- 'Looping from second row till last row which has the data
- For i = 2 To LastRow
- 'Sheet 2 is selected bcoz charts will be inserted here
- Sheets("Sheet2").Select
- 'Adds chart to the sheet
- Set chrt = Sheets("Sheet2").Shapes.AddChart.Chart
- 'sets the chart type
- chrt.ChartType = xlLine
- 'now the line chart is added...setting its data source here
- With Sheets("Sheet1")
- chrt.SetSourceData Source:=.Range(.Cells(i, 1), .Cells(i, LastColumn))
- End With
- 'Left & top are used to adjust the position of chart on sheet
- chrt.ChartArea.Left = 1
- chrt.ChartArea.Top = (i - 2) * chrt.ChartArea.Height
- Next
- End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement