Biểu đồ VBA | Ví dụ để thêm biểu đồ bằng mã VBA
Biểu đồ VBA trong Excel
Biểu đồ có thể được gọi là đối tượng trong VBA, tương tự như trang tính, chúng ta cũng có thể chèn biểu đồ trong VBA theo cách tương tự, trước tiên chúng ta chọn dữ liệu và loại biểu đồ mà chúng ta muốn cho dữ liệu, bây giờ có hai loại biểu đồ khác nhau mà chúng tôi cung cấp một là biểu đồ nhúng trong đó biểu đồ nằm trong cùng một trang dữ liệu và một biểu đồ khác được gọi là trang biểu đồ trong đó biểu đồ nằm trong trang dữ liệu riêng biệt.
Trong phân tích dữ liệu, hiệu ứng hình ảnh là chỉ số hoạt động chính của người đã thực hiện phân tích. Hình ảnh là cách tốt nhất có thể mà nhà phân tích có thể truyền tải thông điệp của mình. Vì tất cả chúng ta đều là người dùng excel nên chúng ta thường dành một lượng thời gian đáng kể để phân tích dữ liệu và đưa ra kết luận bằng các con số và biểu đồ. Tạo biểu đồ là nghệ thuật cần thành thạo và tôi hy vọng bạn có kiến thức tốt về cách tạo biểu đồ bằng excel. Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách tạo biểu đồ bằng cách sử dụng mã hóa VBA.
Làm thế nào để thêm biểu đồ bằng cách sử dụng mã VBA trong Excel?
Bạn có thể tải xuống Mẫu biểu đồ VBA Excel này tại đây - Mẫu biểu đồ VBA Excel# 1 - Tạo biểu đồ bằng cách sử dụng mã hóa VBA
Để tạo bất kỳ biểu đồ nào, chúng ta nên có một số loại dữ liệu số. Đối với ví dụ này, tôi sẽ sử dụng dữ liệu mẫu bên dưới.
Được rồi, hãy chuyển sang trình soạn thảo VBA.
Bước 1: Bắt đầu thủ tục phụ.
Mã:
Sub Charts_Example1 () End Sub
Bước 2: Xác định biến dưới dạng Biểu đồ.
Mã:
Sub Charts_Example1 () Dim MyChart As Chart End Sub
Bước 3: Vì biểu đồ là một biến đối tượng nên chúng ta cần Đặt nó.
Mã:
Sub Charts_Example1 () Dim MyChart dưới dạng biểu đồ Đặt MyChart = Charts. Thêm End Sub
Đoạn mã trên sẽ thêm một trang tính mới dưới dạng trang biểu đồ, không phải dưới dạng trang tính.
Bước 4: Bây giờ chúng ta cần thiết kế biểu đồ. Mở bằng Tuyên bố.
Mã:
Sub Charts_Example1 () Dim MyChart dưới dạng biểu đồ Đặt MyChart = Charts.Add With MyChart End With End Sub
Bước 5: Điều đầu tiên với biểu đồ chúng ta cần làm là Đặt phạm vi nguồn bằng cách chọn phương pháp “Đặt Dữ liệu Nguồn” .
Mã:
Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add With MyChart .SetSourceData End With End Sub
Bước 6: Ở đây chúng ta cần đề cập đến dải nguồn. Trong trường hợp này, phạm vi nguồn của tôi nằm trong trang tính có tên là “Trang tính1” và phạm vi là “A1 đến B7”.
Mã:
Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") End With End Sub
Bước 7: Tiếp theo, chúng ta cần chọn loại biểu đồ mà chúng ta sẽ tạo. Đối với điều này, chúng ta cần chọn thuộc tính Loại biểu đồ .
Mã:
Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = End With End Sub
Bước 8: Ở đây chúng tôi có nhiều loại biểu đồ. Tôi sẽ chọn biểu đồ “ xlColumnClustered ”.
Mã:
Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = xlColumnClustered End With End Sub
Ok, tại thời điểm này, hãy chạy mã bằng phím F5 hoặc theo cách thủ công và xem biểu đồ trông như thế nào.
Bước 9: Bây giờ thay đổi các thuộc tính khác của biểu đồ. Để thay đổi tiêu đề biểu đồ dưới đây là mã.
Như thế này, chúng ta có nhiều thuộc tính và phương pháp với biểu đồ. Sử dụng từng thứ trong số chúng để xem tác động và học hỏi.
Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = xlColumnClustered .ChartTitle.Text = "Hiệu suất Bán hàng" Kết thúc Với Kết thúc Sub
# 2 - Tạo Biểu đồ với Trang tính Excel giống như Hình dạng
Để tạo biểu đồ với cùng một trang tính (biểu dữ liệu) như hình dạng, chúng ta cần sử dụng một kỹ thuật khác.
Bước 1: Đầu tiên khai báo ba biến đối tượng.
Mã:
Sub Charts_Example2 () Dim Ws As Worksheet Dim Rng As Range Dim MyChart As Object End Sub
Bước 2: Sau đó Đặt tham chiếu Trang tính.
Mã:
Sub Charts_Example2 () Dim Ws As Worksheet Dim Rng As Range Dim MyChart As Object Set Ws = Worksheets ("Sheet1") End Sub
Bước 3: Bây giờ đặt đối tượng phạm vi trong VBA
Mã:
Sub Charts_Example2 () Dim Ws As Worksheet Dim Rng As Range Dim MyChart As Object Set Ws = Worksheets ("Sheet1") Set Rng = Ws.Range ("A1: B7") End Sub
Bước 4: Bây giờ thiết lập đối tượng biểu đồ.
Mã:
Sub Charts_Example2 () Dim Ws As Worksheet Dim Rng As Range Dim MyChart As Object Set Ws = Worksheets ("Sheet1") Đặt Rng = Ws.Range ("A1: B7") Đặt MyChart = Ws.Shapes.AddChart2 End Sub
Bước 5: Bây giờ, như thường lệ, chúng ta có thể thiết kế biểu đồ bằng cách sử dụng câu lệnh “With”.
Mã:
Sub Charts_Example2 () Dim Ws As Worksheet 'To Hold Worksheet Reference Dim Rng As Range' Để Giữ Tham chiếu Phạm vi trong Worksheet Dim MyChart As Object Set Ws = Worksheets ("Sheet1") 'Bây giờ biến "Ws" bằng với trang tính " Sheet1 "Set Rng = Ws.Range (" A1: B7 ") 'Bây giờ biến" Rng "giữ phạm vi từ A1 đến B7 trong trang tính" Sheet1 "Đặt MyChart = Ws.Shapes.AddChart2' Biểu đồ sẽ được thêm dưới dạng Hình dạng trong cùng một bảng tính Với MyChart.Chart .SetSourceData Rng 'Vì chúng tôi đã đặt phạm vi ô sẽ được sử dụng cho biểu đồ, chúng tôi đã sử dụng đối tượng RNG ở đây .ChartType = xlColumnClustered .ChartTitle.Text = "Hiệu suất Bán hàng" End With End Sub
Điều này sẽ thêm vào biểu đồ bên dưới.
# 3 - Mã để lặp qua các biểu đồ
Giống như cách chúng ta xem qua các trang tính để thay đổi tên hoặc chèn giá trị, ẩn và hiện chúng. Tương tự để lặp qua các biểu đồ, chúng ta cần sử dụng thuộc tính đối tượng biểu đồ.
Đoạn mã dưới đây sẽ lặp qua tất cả các biểu đồ trong trang tính.
Mã:
Sub Chart_Loop () Dim MyChart As ChartObject cho mỗi MyChart trong ActiveSheet.ChartObjects 'Nhập mã vào đây Tiếp theo MyChart End Sub
# 4 - Phương pháp Thay thế để Tạo Biểu đồ
Chúng ta có thể sử dụng phương pháp thay thế dưới đây để tạo biểu đồ. Chúng ta có thể sử dụng Đối tượng Biểu đồ. Thêm phương pháp tạo biểu đồ dưới đây là mã ví dụ.
Điều này cũng sẽ tạo một biểu đồ giống như phương pháp trước.
Mã:
Sub Charts_Example3 () Dim Ws As Worksheet Dim Rng As Range Dim MyChart As ChartObject Set Ws = Worksheets ("Sheet1") Đặt Rng = Ws.Range ("A1: B7") Đặt MyChart = Ws.ChartObjects.Add (Trái: = ActiveCell.Left, Width: = 400, Top: = ActiveCell.Top, Height: = 200) MyChart.Chart.SetSourceData Nguồn: = Rng MyChart.Chart.ChartType = xlColumnStacked MyChart.Chart.ChartTitle.Text = "Hiệu suất Bán hàng" Kết thúc Phụ