Tôi muốn hỏi cách để có thể trong 1 thao tác có thể mở được 1 lúc nhiều link trong Excel

Suzy Ngo 80 Reputation points
2025-11-20T04:28:58.31+00:00

Tôi muốn hỏi cách để có thể trong 1 thao tác có thể mở được 1 lúc nhiều link trong Excel, ví dụ tôi đang có 10 link ở 10 hàng, làm sao để có thể mở hết lên chỉ trong 1 click (hoặc 1 thao tác bôi đen và click), cả Excel trên máy tính và Excel trên online, phiên bản Excel trên máy tính của tôi như hình dưới:

User's image

Microsoft 365 and Office | Excel | For business | MacOS
0 comments No comments
{count} votes

Answer accepted by question author
  1. Tammy-Ng 5,435 Reputation points Microsoft External Staff Moderator
    2025-11-20T05:36:13.5333333+00:00

    Xin lưu ý rằng đây là diễn đàn en-us. Chúng tôi khuyến nghị bạn đăng câu hỏi bằng tiếng Anh để nhiều thành viên trong cộng đồng có thể hỗ trợ bạn.

    Chúng tôi chân thành cảm ơn sự thông cảm của bạn.
    Lưu ý: Câu trả lời này đã được dịch tự động. Do đó, nó có thể chứa lỗi ngữ pháp hoặc cách diễn đạt khó xử.

    Xin chào Suzy Ngo
    Cảm ơn bạn đã chia sẻ vấn đề trên diễn đàn Hỏi & Đáp.
    Dựa trên thông tin bạn cung cấp, tôi hiểu rằng bạn muốn mở đồng thời nhiều đường link trong Excel chỉ với một thao tác (bôi đen rồi click), cho cả Excel trên máy tính (Windows/Mac) và Excel Online.

    Tuy nhiên, tôi nhận thấy hình ảnh bạn gửi thuộc giao diện Windows, trong khi phần thẻ lại đề cập đến macOS. Để hỗ trợ tốt nhất, tôi xin gửi đến bạn hai hướng xử lý cho cả Windows và macOS. Bạn có thể kiểm tra và thao tác thử.

    Ngoài ra, để đảm bảo giải pháp phù hợp, vui lòng xác nhận giúp tôi: đường link bạn đề cập là loại link gì (ví dụ: link web HTTP/HTTPS, link nội bộ, hay đường dẫn file).

    • Excel trên máy tính (Windows & Mac): Hoàn toàn thực hiện được bằng cách tạo Macro VBA để mở tất cả link trong vùng được bôi đen. Sau đó, bạn có thể gán phím tắt hoặc nút để thao tác nhanh.
    • Excel Online: Không hỗ trợ VBA; Office Scripts cũng không thể mở tab trình duyệt do giới hạn bảo mật.
      Giải pháp thực tế:
    • Tải file về, mở bằng Excel Desktop và chạy macro.

    Tạo macro “OpenSelectedHyperlinks”: Macro này sẽ:

    • Mở tất cả URL trong vùng bạn bôi đen (kể cả link dạng Hyperlink hoặc text).
    • Bỏ qua ô trống hoặc không hợp lệ.
    • Hiển thị cảnh báo nếu số lượng link quá lớn để tránh mở tràn tab.

    Nhấn Alt + F11 (Mac: Fn + Option + F11) để mở VBA Editor.

    Vào Insert >> Module.

    Dán đoạn mã sau:
    Đối với đoạn mã VBA, nên giữ nguyên bằng tiếng Anh để tránh lỗi định dạng hoặc lỗi cú pháp. VBA là ngôn ngữ lập trình, nếu dịch sang tiếng Việt sẽ gây lỗi và không chạy được:

    Option Explicit
    Sub OpenSelectedHyperlinks()
        Dim cell As Range
        Dim addr As String
        Dim openedCount As Long
        Dim invalidCount As Long
        Dim maxToOpen As Long
        Dim resp As VbMsgBoxResult
        
        If TypeName(Selection) <> "Range" Then
            MsgBox "Hay boi den vao vung chua link truoc khi chay script ", vbExclamation
            Exit Sub
        End If
        
        maxToOpen = 30 '
        resp = MsgBox("Ban sap mo link tu " & Selection.Count & " o." & vbCrLf & _
                      "Gioi han hien tai:  " & maxToOpen & " link." & vbCrLf & _
                      "Tiep tuc", vbOKCancel + vbInformation, "Mo nhieu lien ket")
        If resp <> vbOK Then Exit Sub
        
        Application.ScreenUpdating = False
        
        For Each cell In Selection.Cells
            addr = ""
            
            If cell.Hyperlinks.Count > 0 Then
                addr = cell.Hyperlinks(1).Address
            Else
                addr = Trim(CStr(cell.Value))
            End If
            
            If Len(addr) > 0 Then
                If Not HasProtocol(addr) Then
                    addr = "http://" & addr
                End If
                
                If IsLikelyUrl(addr) Then
                    On Error Resume Next
                    ActiveWorkbook.FollowHyperlink Address:=addr, NewWindow:=True
                    If Err.Number = 0 Then
                        openedCount = openedCount + 1
                    Else
                        invalidCount = invalidCount + 1
                        Err.Clear
                    End If
                    On Error GoTo 0
                Else
                    invalidCount = invalidCount + 1
                End If
            End If
            
            If openedCount >= maxToOpen Then Exit For
        Next cell
        
        Application.ScreenUpdating = True
         
    End Sub
    Private Function HasProtocol(ByVal s As String) As Boolean
        Dim i As Integer
        Dim protos As Variant
        protos = Array("http://", "https://", "ftp://", "mailto:", "file://")
        s = LCase$(Trim$(s))
        For i = LBound(protos) To UBound(protos)
            If Left$(s, Len(protos(i))) = protos(i) Then
                HasProtocol = True
                Exit Function
            End If
        Next i
        HasProtocol = False
    End Function
    Private Function IsLikelyUrl(ByVal s As String) As Boolean
        s = Trim$(s)
        If InStr(1, s, " ") > 0 Then
            IsLikelyUrl = False
        Else
            IsLikelyUrl = (InStr(1, s, ".") > 0) Or (Left$(s, 7) = "mailto:")
        End If
    End Function
    

    Gán phím tắt hoặc nút để chạy nhanh:

    • Giảm bớt thao tác thủ công: Không cần vào nhiều menu hoặc chuyển đổi tab để chạy macro.
    • Tiết kiệm thời gian: Chỉ cần bôi đen vùng chứa link và nhấn nút hoặc phím tắt.
    • Tránh lỗi thao tác: Không phải tìm lại macro trong danh sách mỗi lần sử dụng.
      Phím tắt:
    • Vào Developer >> Macros >> chọn OpenSelectedHyperlinks >> Options…
    • Gán ví dụ Ctrl + Shift + S (Mac: dùng Quick Access Toolbar hoặc Ribbon).

    Nút (Button):

    • Trên thanh Ribbon, chọn Developer >> Insert.
    • Trong nhóm Form Controls, chọn biểu tượng Button (Form Control).
    • Di chuyển chuột đến vùng trang tính và vẽ nút (kích thước tùy ý).
    • Sau khi vẽ nút, hộp thoại Assign Macro sẽ xuất hiện.
    • Chọn macro OpenSelectedHyperlinks (macro bạn đã tạo trước đó).
    • Nhấn OK để gán macro cho nút.
    • Nhấp chuột phải vào nút >> chọn Edit Text >> nhập tên dễ nhớ, ví dụ: “Mở tất cả link”.
    • Bôi đen vùng ô chứa các link cần mở.
    • Nhấn nút “Mở tất cả link” vừa tạo.
    • Các link sẽ được mở trong trình duyệt mặc định.

    User's image

    Nếu muốn nút này xuất hiện trong mọi file Excel, hãy lưu macro vào Personal Macro Workbook.

    Trên macOS, thao tác tương tự nhưng giao diện hơi khác; vẫn thực hiện qua tab Developer.

    Hy vọng thông tin này hữu ích với bạn. Vui lòng thử thao tác và phản hồi nếu có bất kỳ phát sinh nào hoặc cần hỗ trợ thêm. Tôi luôn sẵn sàng hỗ trợ bạn!


    Nếu câu trả lời hữu ích, vui lòng nhấp vào "Chấp nhận câu trả lời" và vui lòng ủng hộ nó. Nếu bạn có thêm câu hỏi về câu trả lời này, vui lòng nhấp vào "Bình luận".

    Lưu ý: Vui lòng làm theo các bước trong tài liệu của chúng tôi để bật thông báo qua email nếu bạn muốn nhận thông báo qua email liên quan cho chuỗi này."


0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.