Bỏ qua nội dung chính

Làm cách nào để tìm và thay thế văn bản trong tiêu đề biểu đồ trong Excel?

Biểu đồ rất hữu ích cho chúng tôi trong Excel và chúng tôi thường cung cấp cho chúng một số tiêu đề để xác định chúng. Nhưng bạn đã thử tìm và thay thế giá trị văn bản trong tiêu đề biểu đồ trong nhiều biểu đồ chưa? Hôm nay, tôi sẽ nói về cách tìm một văn bản cụ thể trong nhiều ô biểu đồ và thay thế chúng bằng giá trị khác trong Excel.

Tìm và thay thế văn bản trong tiêu đề biểu đồ trong Excel bằng mã VBA


mũi tên màu xanh bong bóng bên phải Tìm và thay thế văn bản trong tiêu đề biểu đồ trong Excel bằng mã VBA

Giả sử bạn có một trang tính chứa các biểu đồ như ảnh chụp màn hình sau đây và bạn chỉ muốn thay thế văn bản Tháng Giêng bằng Tháng Hai trong tất cả các tiêu đề biểu đồ. Tất nhiên, bạn có thể thay đổi thủ công từng cái một, nhưng việc này sẽ tốn thời gian nếu có nhiều biểu đồ. Vì vậy, ở đây, mã VBA sau có thể giúp bạn giải quyết công việc này. </ P>

doc-Replace-chart-title1

1. Kích hoạt trang tính của bạn có chứa các biểu đồ bạn muốn tìm và thay thế trong tiêu đề của chúng.

2. Giữ ALT + F11 chìa khóa và nó mở Cửa sổ Microsoft Visual Basic for Applications.

3. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Cửa sổ mô-đun.

Mã VBA: Tìm và thay thế văn bản trong tiêu đề biểu đồ trong trang tính đang hoạt động

Sub ChartLabelReplace()
'Update 20140603
Dim xWs As Worksheet
Dim xFindStr As String
Dim xReplace As String
xFindStr = Application.InputBox("Find:", xTitleId, "", Type:=2)
xReplace = Application.InputBox("Replace:", xTitleId, "", Type:=2)
Set xWs = Application.ActiveSheet
For Each ch In xWs.ChartObjects
    If ch.Chart.HasTitle Then
        ch.Chart.ChartTitle.Text = VBA.Replace(ch.Chart.ChartTitle.Text, xFindStr, xReplace, 1)
    End If
Next
End Sub

4. Sau đó nhấn F5 để chạy mã này và một hộp nhắc sẽ xuất hiện để nhắc bạn nhập văn bản cũ mà bạn muốn thay thế, xem ảnh chụp màn hình:

doc-Replace-chart-title1

5. Và sau đó nhấp vào OK và một hộp nhắc khác bật lên, bạn cần nhập giá trị văn bản mới mà bạn muốn thay thế giá trị cũ, xem ảnh chụp màn hình:

doc-Replace-chart-title1

6. Tiếp tục nhấp OK để đóng hộp nhắc và các văn bản cũ của bạn đã được thay thế bằng tin tức tại một thời điểm trong trang tính hiện tại như ảnh chụp màn hình sau:

doc-Replace-chart-title1

Chú thích: Nếu bạn cần tìm và thay thế giá trị văn bản của tiêu đề biểu đồ trong tất cả các trang tính trong sổ làm việc, bạn nên áp dụng mã VBA sau: (Quy trình tương tự như trên)

Mã VBA: Tìm và thay thế văn bản trong tiêu đề biểu đồ trong tất cả các trang tính

Sub ChartLabelReplaceAllWorksheet()
'Update 20140603
Dim xFindStr As String
Dim xReplace As String
xFindStr = Application.InputBox("Find:", xTitleId, "", Type:=2)
xReplace = Application.InputBox("Replace:", xTitleId, "", Type:=2)
For Each sh In Worksheets
    For Each ch In sh.ChartObjects
        If ch.Chart.HasTitle Then
            ch.Chart.ChartTitle.Text = VBA.Replace(ch.Chart.ChartTitle.Text, xFindStr, xReplace, 1)
        End If
    Next
Next
End Sub

Các bài liên quan:

Làm cách nào để tìm và thay thế văn bản trong các nhận xét trong Excel?

Làm cách nào để tìm và thay thế văn bản cụ thể trong nhiều hộp văn bản của Excel?

Làm cách nào để thay đổi nhiều đường dẫn siêu kết nối cùng một lúc trong Excel?

Công cụ năng suất văn phòng tốt nhất

🤖 Trợ lý AI của Kutools: Cách mạng hóa việc phân tích dữ liệu dựa trên: Thực thi thông minh   |  Tạo mã  |  Tạo công thức tùy chỉnh  |  Phân tích dữ liệu và tạo biểu đồ  |  Gọi các hàm Kutools...
Các tính năng phổ biến: Tìm, đánh dấu hoặc xác định các bản sao   |  Xóa hàng trống   |  Kết hợp các cột hoặc ô mà không làm mất dữ liệu   |   Vòng không có công thức hữu ích. Cảm ơn !
Siêu tra cứu: Nhiều tiêu chí VLookup    VLookup Nhiều Giá Trị  |   VLookup trên nhiều trang tính   |   Tra cứu mờ ....
Danh sách thả xuống nâng cao: Tạo nhanh danh sách thả xuống   |  Danh sách thả xuống phụ thuộc   |  Danh sách thả xuống nhiều lựa chọn ....
Trình quản lý cột: Thêm một số cột cụ thể  |  Di chuyển cột  |  Chuyển đổi trạng thái hiển thị của các cột ẩn  |  So sánh dãy và cột hữu ích. Cảm ơn !
Các tính năng nổi bật: Tiêu điểm lưới   |  Chế độ xem thiết kế   |   Thanh công thức lớn    Trình quản lý sổ làm việc & trang tính   |  Thư viện tài nguyên (Văn bản tự động)   |  Bảng chọn ngày   |  Kết hợp các bảng tính   |  Mã hóa/Giải mã ô    Gửi email theo danh sách   |  Siêu lọc   |   Bộ lọc đặc biệt (lọc in đậm/nghiêng/gạch ngang...) ...
15 bộ công cụ hàng đầu12 bản văn CÔNG CỤ (thêm văn bản, Xóa ký tự,...)   |   50 + Biểu đồ Các loại (Biểu đồ Gantt,...)   |   40+ Thực tế Công thức (Tính tuổi dựa trên ngày sinh,...)   |   19 chèn CÔNG CỤ (Chèn mã QR, Chèn ảnh từ đường dẫn,...)   |   12 Chuyển đổi CÔNG CỤ (Số thành từ, Chuyển đổi tiền tệ,...)   |   7 Hợp nhất & Tách CÔNG CỤ (Các hàng kết hợp nâng cao, Chia ô,...)   |   ... và nhiều hơn nữa

Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian.  Bấm vào đây để có được tính năng bạn cần nhất...

Mô tả


Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!

 

Comments (6)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Just want to say thanks for this. Saved me hours of time.
This comment was minimized by the moderator on the site
I want to do this for text in the legend and axis labels as well. What's the VBA name for the Legend? I tried to edit the module by replacing "ChartTitle" with "Legend" "LegendEntry" "ChartLegend" none work.
This comment was minimized by the moderator on the site
Some of my chart titles contain multiple font sizes. When I run the macro above, it converts all of the fonts to the same size and I have to go back through and manually re-size them. Is there a way to modify the VBA code so that it maintains the original font sizes? (I'm still a VBA newb, so any help would be appreciated!)
This comment was minimized by the moderator on the site
Thank you!!! It helped me so much!!!
This comment was minimized by the moderator on the site
This one works for me, because otherwise the variables are not declared : Sub ChartLabelReplace() 'Update 20141017 Dim xFindStr As String Dim xReplace As String Dim ws As Worksheet Dim ch As ChartObject xFindStr = InputBox("Find:") xReplace = InputBox("Replace:") For Each ws In Worksheets For Each ch In ws.ChartObjects If ch.Chart.HasTitle Then ch.Chart.ChartTitle.Text = VBA.Replace(ch.Chart.ChartTitle.Text, xFindStr, xReplace, 1) End If Next Next End Sub
This comment was minimized by the moderator on the site
How does one change the VBA macro to only apply the change to selected charts (and not all the charts on the worksheet)?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations