Bạn muốn loại bỏ đường liên kết trong Excel? Trong bài viết này, UniTrain sẽ hướng dẫn bạn cách xóa đường liên kết bằng  VBA Excel qua 3 cách khác nhau:

1. Câu lệnh IF

2. Tính năng On Error Statement

3. Sử dụng MsgBox

Video ngắn dưới đây sẽ giới thiệu cách thao tác loại bỏ đường liên kết bằng VBA Excel.

excel vba break links

1. Sử dụng câu lệnh IF trong VBA Excel

Trong ví dụ đầu tiên, người dùng sẽ sử dụng câu lệnh IF cùng với For Next Loop trong mã VBA để ngắt liên kết trong Excel bằng cách:

Bước 1: Chọn Developer > chọn Visual Basic. 

Opening Visual Basic Editor Window for Writing VBA Code to Break Links in Excel

Bước 2: Cửa sổ Visual Basic Editor hiển thị, chọn Insert > Module.

Opening Module in Visual Basic Editor Window

Bước 3: Nhập mã dưới đây vào Module.

Sub Break_Links()
Dim act_wb As Workbook
Set act_wb = Application.ActiveWorkbook
If Not IsEmpty(act_wb.LinkSources(xlExcelLinks)) Then
For Each ext_link In act_wb.LinkSources(xlExcelLinks)
act_wb.BreakLink ext_link, xlLinkTypeExcelLinks
Next ext_link
End If
End Sub

VBA Code with If Statement And For Next Loop to Break Links in Excel

Bước 4: Chọn Save và trở lại worksheet.

Saving VBA Code to Break Links in Excel

Bước 5: Chọn Developer > Macros.

Selecting Macros Command in Excel

Bước 6: Hộp thoại Macro sẽ hiển thị, chọn Break_Links trong mục Macro Name > Run.

Running VBA Code to Break Links in Excel

Sau đó, khi chọn một ô bất kì thì bạn sẽ thấy đường liên kết đã bị xóa.

Links are Removed from Values

2. Sử dụng tính năng On Error Statement để ngắt liên kết trong Excel Ignoring Error Warnings

On Error Statement thường được dùng để xử lý lỗi. Trong ví dụ này, người dùng sẽ sử dụng On Error Resume Next từ câu lệnh viết mã VBA để ngắt liên kết trong Excel bằng cách thao tác:

Bước 1: Chọn Developer > chọn Visual Basic. 

Opening Visual Basic Editor Window for Writing VBA Code to Break Links in Excel

Bước 2: Cửa sổ Visual Basic Editor hiển thị, chọn Insert > Module.

Opening Module in Visual Basic Editor Window

Bước 3: Nhập mã vào Module.

Sub remove_links()
Dim ext_links As Variant
Dim j As Integer
ext_links = ActiveWorkbook.LinkSources(1)
On Error Resume Next
For j = 1 To UBound(ext_links)
ActiveWorkbook.BreakLink ext_links(j), xlLinkTypeExcelLinks
Next j
On Error GoTo 0
End Sub

VBA Code with On Error Statement to Break Links in Excel

Bước 4: Save mã và trở lại worksheet.

Bước 5: Chọn Developer > Macros.

Using Macros Command to Run VBA Code in Excel

Bước 6: Hộp thoại Macro hiển thị, chọn remove_links trong mục Macro name > Run.

Running Macros to Break Links in Excel VBA

Sau đó, bạn thử chọn ô C5 (như hình dưới) và thấy đường liên kết đã bị ngắt kết nối.

Link Has Been Broken and Cell Only Contains Value

3. Tính số đường liên kết bị ngắt kết nối trong MsgBox

Bạn cũng có thể biết số lượng liên kết bị ngắt kết nối trong MsgBox bằng cách:

Cách 1: Nhấn ALT + F11 để mở cửa sổ Visual Basic Editor.

Using Keyboard Shortcut to Open VBA Editor

Bước 2: Khi cửa sổ Visual Basic Editor hiển thị, chọn Insert > Module. 

Opening Module for Writing VBA Code to Break Links in Excel

Bước 3: Cửa sổ Module hiển thị, nhập mã dưới đây:

Sub break_ext_links()
Dim ext_links As Variant
Dim y As Long
Dim brk_count As Long
ext_links = ActiveWorkbook.LinkSources(Type:=xlLinkTypeExcelLinks)
If IsEmpty(ext_links) = True Then GoTo ReportResults
For y = 1 To UBound(ext_links)
ActiveWorkbook.BreakLink Name:=ext_links(y), Type:=xlLinkTypeExcelLinks
brk_count = brk_count + 1
Next y
ReportResults:
MsgBox "No of Broken Links: " & brk_count
End Sub

VBA Code for Displaying Number of Broken Links in MsgBox

Bước 4: Save mã và trở lại worksheet.

Bước 5: Nhấn ALT + F8 để mở hộp thoại Macro.

Applying Keyboard Shortcut to Open Macro Dialog Box

Bước 6: Hộp thoại Macro hiển thị > chọn break_ext_links trong mục Macro name > Run. 

Employing Macro Dialog Box to Run Code

Bước 7: Trong MsgBox, No of Broken Links sẽ hiển thị > OK.

Output MsgBox from VBA Code

Sau đó, chọn bất kì ô nào có đường liên kết trước đó và bạn sẽ thấy đường liên kết đã bị ngắt kết nối.

Final Output with Broken Links

Xem thêm

Khóa học Ứng dụng VBA trong Excel

Cách xóa phạm vi được đặt tên bằng VBA Excel

Cách kiểm tra phạm vi tên bằng VBA Excel

Cách ẩn thanh công thức Excel VBA

Tags