VBA với siêu liên kết (Hyperlink) trong Excel

Rate this post

(Thủ thuật VBA Excel) Office ngày càng trở nên quen thuộc với mọi người trong nhiều lĩnh vực như giáo dục, ngân hàng, tài chính, kinh doanh, xây dựng, … Tuy mỗi lĩnh vực mang đặc thù khác nhau nhưng phần mềm Office vẫn có thể đáp ứng tất cả các yêu cầu của người sử dụng. Đặc biệt, Excel được sử dụng vào rất nhiều công việc như: tính lương, bảng giá, dự toán xây dựng, kế toán. Người sử dụng không những có thể sử dụng những hàm sẵn có mà còn có thể tự viết ra các hàm để giải quyết công việc và bài toán thực tế.

Sau đây là các chức năng của VBA khi làm việc với các siêu liên kết (Hyperlink).

1. Xóa toàn bộ các siêu liên kết các ô được chọn

Đầu tiên, sao chép đoạn mã sau vào Workbook.
Sub RemoveHyperlinks()
Selection.Hyperlinks.Delete
End Sub
Tiếp theo, chọn các ô cần xóa liên kết và chạy Macro này.

2. Xóa toàn bộ các siêu liên kết trong Sheet hiện tại

Để xóa toàn bộ các siêu liên kết trong Sheet hiện tại, sử dụng các Macro sau:
Sub RemoveHyperlinksOnActiveSheet()
Cells.Hyperlinks.Delete
End Sub

3. Lấy ra địa chỉ của siêu liên kết điền vào ô liền kề bên phải

Để lấy ra địa chỉ của siêu liên kết trên một bảng tính và lưu nó vào ô liền kề bên phải, sử dụng Macro sau:
Sub ExtractHyperlink()
Dim HL As Hyperlink
For Each HL In ActiveSheet.Hyperlinks
HL.Range.Offset(0, 1).Value = HL.Address
Next
End Sub
VBA voi sieu lien ket trong excel

4. Trích xuất các URL hoặc địa chỉ email từ một siêu liên kết

Để biết chính xác một siêu liên kết là gì, phải đặt chuột vào Url đó hoặc phải chuột, chọn Edit Hyperlink. Trường hợp có một danh sách các siêu liên kết và muốn kiểm tra thủ công có lẽ là bất khả thi vì mất rất nhiều thời gian. Trong Excel hiện không có hàm để trích xuất các URL hay địa chỉ email từ một siêu liên kết nên bạn cần tạo hàm riêng.
VBA voi sieu lien ket trong excel
Sử dụng đoạn mã sau để tạo hàm GetURL, sau đó sử dụng hàm GetURL trong bảng tính như các hàm khác.
Function GetURL(cell As Range)
GetURL = cell.Hyperlinks(1).Address
End Function

VD: Để tìm URL cho một URL trong ô B10, sử dụng công thức này: = GetURL (B10).

5. Chuyển đổi văn bản URL để liên kết có thể click

Trường hợp có nhiều URL trong bảng tính nhưng các URL không có liên kết. Để chuyển đổi tất cả các url đến các siêu liên kết, bạn có thể làm thủ công bằng việc kích đúp chuột vào từng cái một nhưng sẽ rất tốn thời gian nếu có rất nhiều các URL. Để chuyển đổi nhiều URL đến các siêu liên kết để có thể click trong Excel, bạn có thể sử dụng Macro sau:

VBA voi sieu lien ket trong excel

Sub AddHyperlinks()
Dim Cell As Range
For Each Cell In Intersect(Selection, ActiveSheet.UsedRange)
If Cell <> “” Then
ActiveSheet.Hyperlinks.Add Cell, Cell.Value
End If
Next
End Sub

Tiếp theo, bạn chỉ cần quay lại màn hình làm việc Excel và bôi đen toàn bộ các danh sách cần chuyển đổi rồi chạy Macro.

Hi vọng bài viết của Cuuhotinhoc.com giúp ích cho các bạn!
VBA với siêu liên kết (Hyperlink) trong Excel

5 (100%) 1 vote