Chuyển đổi HTML sang VBA trực tuyến

Như ảnh chụp màn hình bên dưới được hiển thị, nếu số lượng thẻ html tồn tại trong các ô trang tính của bạn, làm cách nào bạn có thể chuyển đổi chúng thành văn bản thuần túy trong Excel?

Chuyển đổi HTML sang VBA trực tuyến



Chuyển đổi html thành văn bản trong các ô có chức năng Tìm và Thay thế

Bạn có thể chuyển đổi tất cả html thành văn bản trong ô bằng chức năng Tìm và Thay thế trong Excel. Vui lòng làm như sau

1. Chọn các ô bạn sẽ chuyển đổi tất cả html thành văn bản và nhấn phím Ctrl + F để mở hộp thoại Tìm và Thay thế

2. In the Find and Replace dialog box, go to the Replace tab, enter <*> into the Find what box, keep the Replace with box empty, and click the Replace All button. See screenshot:

Chuyển đổi HTML sang VBA trực tuyến

3. Sau đó, hộp thoại Microsoft Excel bật lên cho bạn biết có bao nhiêu thẻ html đã được thay thế, nhấp vào nút OK và đóng hộp thoại Tìm và Thay thế

Chuyển đổi HTML sang VBA trực tuyến

Sau đó, bạn có thể thấy tất cả các thẻ html bị xóa khỏi các ô đã chọn như ảnh chụp màn hình bên dưới được hiển thị

Chuyển đổi HTML sang VBA trực tuyến


Chuyển đổi html thành văn bản trong toàn bộ trang tính bằng VBA

Ngoài ra, bạn có thể chuyển đổi tất cả html thành văn bản trong toàn bộ trang tính cùng lúc với mã VBA bên dưới

1. Mở bảng tính chứa html bạn sẽ chuyển đổi thành văn bản, sau đó nhấn tổ hợp phím Alt + F11 để mở cửa sổ Microsoft Visual Basic for Applications

2. Trong cửa sổ Microsoft Visual Basic for Applications, nhấp vào Chèn > Mô-đun, sau đó sao chép mã VBA bên dưới vào cửa sổ Mô-đun

mã VBA. Chuyển đổi html thành văn bản trong toàn bộ trang tính

Sub RemoveHTMLTags()
'Update by Extendoffice 20180703
    Dim xRg As Range
    Dim xCell As Range
    Dim xStr As String
    Dim xRegEx As RegExp
    Dim xMatch As Match
    Dim xMatches As MatchCollection
    Set xRegEx = New RegExp
    Application.EnableEvents = False
    Set xRg = Cells.SpecialCells(xlCellTypeConstants)
    With xRegEx
        .Global = True
        .Pattern = "<(""[^""]*""|'[^']*'|[^'"">])*>"
    End With
    For Each xCell In xRg
        xStr = xCell.Value
            Set xMatches = xRegEx.Execute(xCell.Text)
            For Each xMatch In xMatches
                xStr = Replace(xStr, xMatch.Value, "")
            Next
        xCell.Value = xStr
    Next
   Application.EnableEvents = True
End Sub

3. Vẫn trong cửa sổ Microsoft Visual Basic for Applications, vui lòng nhấp vào Tools > References, kiểm tra Microsoft VBScript Regular Expression 5. 5 trong hộp thoại References-VBAProject, rồi bấm nút OK

Đầu vào HTML của bạn phải chứa ít nhất một thẻ TABLE. Nếu HTML của bạn chứa nhiều thẻ TABLE, bạn có thể chọn bảng nào sẽ chuyển đổi bằng cách thay đổi lựa chọn "Bảng nào"
Tất cả các bảng sẽ được chuyển đổi theo mặc định thành 1 tệp CSV
Xem thêm Bảng CSV sang HTML


Tùy chọn đầu ra Dấu tách trường đầu ra

(Sử dụng điều này để loại bỏ ngắt dòng trong giá trị trường)
(Sử dụng điều này để ngăn nhìn thấy các thẻ HTML trong đầu ra của bạn)
(Sử dụng điều này nếu bạn có quá nhiều khoảng trống trong đầu ra của mình)

Macro Excel chuyển đổi tất cả các thực thể HTML thành tương đương có thể đọc được. Điều này bao gồm những thứ như   và " và hơn 100 thứ khác

Chuyển đổi HTML sang VBA trực tuyến

phần

vĩ mô

(Nếu mã macro ở đây không hoạt động, hãy đảm bảo tải xuống tệp mẫu và lấy mã từ đó. )

Sub Convert_Html_Entities()
''''''''''''''  TeachExcel.com  ''''''''''''''
'Convert HTML Entities into readable text.

Application.ScreenUpdating = False

For Each c In Selection

    'Replace the entities - one per line.
    c.Value = Replace(c.Value, """, """")
    c.Value = Replace(c.Value, "&", "&")
    c.Value = Replace(c.Value, "'", "'")
    c.Value = Replace(c.Value, "<", "<")
    c.Value = Replace(c.Value, ">", ">")
    c.Value = Replace(c.Value, " ", " ")
    c.Value = Replace(c.Value, "¡", "¡")
    c.Value = Replace(c.Value, "¢", "¢")
    c.Value = Replace(c.Value, "£", "£")
    c.Value = Replace(c.Value, "¤", "¤")
    c.Value = Replace(c.Value, "¥", "¥")
    c.Value = Replace(c.Value, "¦", "¦")
    c.Value = Replace(c.Value, "§", "§")
    c.Value = Replace(c.Value, "¨", "¨")
    c.Value = Replace(c.Value, "©", "©")
    c.Value = Replace(c.Value, "ª", "ª")
    c.Value = Replace(c.Value, "«", "«")
    c.Value = Replace(c.Value, "¬", "¬")
    c.Value = Replace(c.Value, "®", "®")
    c.Value = Replace(c.Value, "¯", "¯")
    c.Value = Replace(c.Value, "°", "°")
    c.Value = Replace(c.Value, "±", "±")
    c.Value = Replace(c.Value, "²", "²")
    c.Value = Replace(c.Value, "³", "³")
    c.Value = Replace(c.Value, "´", "´")
    c.Value = Replace(c.Value, "µ", "µ")
    c.Value = Replace(c.Value, "¶", "¶")
    c.Value = Replace(c.Value, "·", "·")
    c.Value = Replace(c.Value, "¸", "¸")
    c.Value = Replace(c.Value, "¹", "¹")
    c.Value = Replace(c.Value, "º", "º")
    c.Value = Replace(c.Value, "»", "»")
    c.Value = Replace(c.Value, "¼", "¼")
    c.Value = Replace(c.Value, "½", "½")
    c.Value = Replace(c.Value, "¾", "¾")
    c.Value = Replace(c.Value, "¿", "¿")
    c.Value = Replace(c.Value, "À", "À")
    c.Value = Replace(c.Value, "Á", "Á")
    c.Value = Replace(c.Value, "Â", "Â")
    c.Value = Replace(c.Value, "Ã", "Ã")
    c.Value = Replace(c.Value, "Ä", "Ä")
    c.Value = Replace(c.Value, "Å", "Å")
    c.Value = Replace(c.Value, "Æ", "Æ")
    c.Value = Replace(c.Value, "Ç", "Ç")
    c.Value = Replace(c.Value, "È", "È")
    c.Value = Replace(c.Value, "É", "É")
    c.Value = Replace(c.Value, "Ê", "Ê")
    c.Value = Replace(c.Value, "Ë", "Ë")
    c.Value = Replace(c.Value, "Ì", "Ì")
    c.Value = Replace(c.Value, "Í", "Í")
    c.Value = Replace(c.Value, "Î", "Î")
    c.Value = Replace(c.Value, "Ï", "Ï")
    c.Value = Replace(c.Value, "Ð", "Ð")
    c.Value = Replace(c.Value, "Ñ", "Ñ")
    c.Value = Replace(c.Value, "Ò", "Ò")
    c.Value = Replace(c.Value, "Ó", "Ó")
    c.Value = Replace(c.Value, "Ô", "Ô")
    c.Value = Replace(c.Value, "Õ", "Õ")
    c.Value = Replace(c.Value, "Ö", "Ö")
    c.Value = Replace(c.Value, "×", "×")
    c.Value = Replace(c.Value, "Ø", "Ø")
    c.Value = Replace(c.Value, "Ù", "Ù")
    c.Value = Replace(c.Value, "Ú", "Ú")
    c.Value = Replace(c.Value, "Û", "Û")
    c.Value = Replace(c.Value, "Ü", "Ü")
    c.Value = Replace(c.Value, "Ý", "Ý")
    c.Value = Replace(c.Value, "Þ", "Þ")
    c.Value = Replace(c.Value, "ß", "ß")
    c.Value = Replace(c.Value, "à", "à")
    c.Value = Replace(c.Value, "á", "á")
    c.Value = Replace(c.Value, "â", "â")
    c.Value = Replace(c.Value, "ã", "ã")
    c.Value = Replace(c.Value, "ä", "ä")
    c.Value = Replace(c.Value, "å", "å")
    c.Value = Replace(c.Value, "æ", "æ")
    c.Value = Replace(c.Value, "ç", "ç")
    c.Value = Replace(c.Value, "è", "è")
    c.Value = Replace(c.Value, "é", "é")
    c.Value = Replace(c.Value, "ê", "ê")
    c.Value = Replace(c.Value, "ë", "ë")
    c.Value = Replace(c.Value, "ì", "ì")
    c.Value = Replace(c.Value, "í", "í")
    c.Value = Replace(c.Value, "î", "î")
    c.Value = Replace(c.Value, "ï", "ï")
    c.Value = Replace(c.Value, "ð", "ð")
    c.Value = Replace(c.Value, "ñ", "ñ")
    c.Value = Replace(c.Value, "ò", "ò")
    c.Value = Replace(c.Value, "ó", "ó")
    c.Value = Replace(c.Value, "ô", "ô")
    c.Value = Replace(c.Value, "õ", "õ")
    c.Value = Replace(c.Value, "ö", "ö")
    c.Value = Replace(c.Value, "÷", "÷")
    c.Value = Replace(c.Value, "ø", "ø")
    c.Value = Replace(c.Value, "ù", "ù")
    c.Value = Replace(c.Value, "ú", "ú")
    c.Value = Replace(c.Value, "û", "û")
    c.Value = Replace(c.Value, "ü", "ü")
    c.Value = Replace(c.Value, "ý", "ý")
    c.Value = Replace(c.Value, "þ", "þ")
    c.Value = Replace(c.Value, "ÿ", "ÿ")
    c.Value = Replace(c.Value, "Œ", "Œ")
    c.Value = Replace(c.Value, "œ", "œ")
    c.Value = Replace(c.Value, "Š", "Š")
    c.Value = Replace(c.Value, "š", "š")
    c.Value = Replace(c.Value, "Ÿ", "Ÿ")
    c.Value = Replace(c.Value, "ƒ", "ƒ")
    c.Value = Replace(c.Value, "ˆ", "ˆ")
    c.Value = Replace(c.Value, "˜", "˜")
    c.Value = Replace(c.Value, " ", "")
    c.Value = Replace(c.Value, "‌", "")
    c.Value = Replace(c.Value, "‍", "")
    c.Value = Replace(c.Value, "‎", "")
    c.Value = Replace(c.Value, "‏", "")
    c.Value = Replace(c.Value, "–", "–")
    c.Value = Replace(c.Value, "—", "-")
    c.Value = Replace(c.Value, "‘", "'")
    c.Value = Replace(c.Value, "’", "'")
    c.Value = Replace(c.Value, "‚", "‚")
    c.Value = Replace(c.Value, "“", """)
    c.Value = Replace(c.Value, "”", """)
    c.Value = Replace(c.Value, "„", "„")
    c.Value = Replace(c.Value, "†", "†")
    c.Value = Replace(c.Value, "‡", "‡")
    c.Value = Replace(c.Value, "•", "•")
    c.Value = Replace(c.Value, "…", "…")
    c.Value = Replace(c.Value, "‰", "‰")
    c.Value = Replace(c.Value, "‹", "‹")
    c.Value = Replace(c.Value, "›", "›")
    c.Value = Replace(c.Value, "€", "€")
    c.Value = Replace(c.Value, "™", "™")

Next c

Application.ScreenUpdating = True

End Sub

Cài đặt ở đâu. mô-đun

Sử dụng Macro

Macro này hoạt động trên bất kỳ ô nào bạn chọn trước khi chạy nó

Nếu bạn chọn một ô, nó sẽ hoạt động trên ô đó

Nếu bạn chọn 100 ô thì sẽ chạy trên 100 ô

Ghi chú. Nếu bạn chạy macro này trên nhiều hàng cùng lúc, tùy thuộc vào tốc độ máy tính của bạn, sẽ mất nhiều thời gian

Thêm, chỉnh sửa hoặc xóa biểu tượng

Để thêm, sửa, bớt các ký hiệu, bạn muốn thay đổi các dòng có dạng như sau

c. Giá trị = Thay thế (c. Giá trị, " ", " ")

là giá trị để thay thế

" " giữ ký hiệu sẽ được sử dụng để thay thế giá trị trên. Trong trường hợp này,   sẽ được thay thế bằng dấu cách

Tất cả các ký hiệu và thay thế phải được đặt trong dấu ngoặc kép

Bạn có thể thêm hoặc xóa các dòng tùy thuộc vào tập dữ liệu của mình hoặc bạn có thể thay đổi các dòng hiện có

Để có danh sách tốt về các thực thể HTML, bạn có thể xem trang web này

ghi chú

Tải xuống tệp đính kèm để lấy macro trong Excel và chạy thử



Chuyển đổi HTML sang VBA trực tuyến

Khóa học Excel VBA - Từ mới bắt đầu đến chuyên gia

Hơn 200 bài học video Hơn 50 giờ hướng dẫn Hơn 200 hướng dẫn Excel

Trở thành bậc thầy về VBA và Macro trong Excel và tìm hiểu cách tự động hóa tất cả các tác vụ của bạn trong Excel với khóa học trực tuyến này. (Không yêu cầu kinh nghiệm VBA. )

Làm cách nào để chuyển đổi HTML sang Excel bằng mã VBA?

Đây là các bước tôi đã sử dụng. .
CreateObject("MSXML2. XMLHTTP"). nhận được phản hồi của URL
CreateObject("HTMLFile"). tạo Tài liệu HTML từ responseText
Thay màu xám bằng màu đen để làm tối đường viền
Tiền tố cột s1 và s2 với @ để giữ nguyên định dạng
Sao chép HTML vào Bảng tạm của Windows

Bạn có thể chuyển đổi HTML sang Excel không?

Bất kỳ bảng HTML nào bạn đã tạo đều có thể được chuyển đổi thành Bảng tính Excel bằng cách sử dụng jQuery và bảng này tương thích với mọi trình duyệt.

Bạn có thể sử dụng HTML trong VBA không?

HTML chỉ là một tệp văn bản thuần túy. bạn có thể viết ra bằng cách sử dụng các công cụ tệp tích hợp sẵn trong VBA hoặc sử dụng Scripting FileSystemObject .