thanhtung1088
Thành viên mới

- Tham gia
- 23/8/13
- Bài viết
- 20
- Được thích
- 2
Chào các anh chị.
Tôi có một file dữ liệu excel (đính kèm theo) được xuất ra từ phần mềm đo đạc, file này có các cột từ cột A đến cột N không có dữ liệu, nên tôi sẽ xóa các cột này đi, sau đó tôi vẽ biểu đồ dạng “Scatter with Straight Lines” với dữ liệu từ 3 cột P, S, T (tương ứng cột B, E, F sau khi đã xóa cột A đến cột N). Vì không biết cách nào để vẽ biểu đồ khi cột B nằm cách xa cột E và F, nên tôi copy các cột này đến cột H,I,J để có thể vẽ được biểu đồ. Cuối cùng là điều chỉnh X - axis với hai giá trị là giá trị dòng đầu tiên của cột B cho Minimum, và dòng cuối cùng của cột B cho Maximum trong phần Format Axis.
Các quá trình này tôi ghi lại bằng Macro, các anh chị cho tôi hỏi phải thay đổi code thế nào để có thể vẽ lại biểu đồ khi dữ liệu của tôi có số dòng tăng lên bất kỳ?
Xin cảm ơn.
Tôi có một file dữ liệu excel (đính kèm theo) được xuất ra từ phần mềm đo đạc, file này có các cột từ cột A đến cột N không có dữ liệu, nên tôi sẽ xóa các cột này đi, sau đó tôi vẽ biểu đồ dạng “Scatter with Straight Lines” với dữ liệu từ 3 cột P, S, T (tương ứng cột B, E, F sau khi đã xóa cột A đến cột N). Vì không biết cách nào để vẽ biểu đồ khi cột B nằm cách xa cột E và F, nên tôi copy các cột này đến cột H,I,J để có thể vẽ được biểu đồ. Cuối cùng là điều chỉnh X - axis với hai giá trị là giá trị dòng đầu tiên của cột B cho Minimum, và dòng cuối cùng của cột B cho Maximum trong phần Format Axis.
Các quá trình này tôi ghi lại bằng Macro, các anh chị cho tôi hỏi phải thay đổi code thế nào để có thể vẽ lại biểu đồ khi dữ liệu của tôi có số dòng tăng lên bất kỳ?
Xin cảm ơn.
PHP:
Sub bieudo()
' bieudo Macro
'
Columns("A:N").Select
Selection.Delete Shift:=xlToLeft
Columns("B:B").Select
Selection.Copy
Range("H1").Select
ActiveSheet.Paste
Columns("E:F").Select
Application.CutCopyMode = False
Selection.Copy
Range("I1").Select
ActiveSheet.Paste
Range("H1:J802").Select
Range("H5").Activate
ActiveSheet.Shapes.AddChart.Select
ActiveChart.SetSourceData Source:=Range("'Tax and Task Report'!$H$1:$J$802")
ActiveChart.ChartType = xlXYScatterLinesNoMarkers
ActiveChart.Axes(xlCategory).Select
ActiveChart.Axes(xlCategory).MinimumScale = 0
ActiveChart.Axes(xlCategory).MinimumScale = 300
ActiveChart.Axes(xlCategory).MaximumScale = 1200
ActiveChart.Axes(xlCategory).MaximumScale = 1100
End Sub