Excel VBA chuyển đổi html thành văn bản được định dạng

gắn thẻ vào một mảng 'đoạn văn', sau đó với mỗi phần tử, tôi đã sử dụng câu trả lời của Tim để lấy văn bản ra khỏi html [câu trả lời rất ngọt ngào btw]

Ngoài ra, tôi đã nối từng 'đoạn văn' đã được làm sạch với ký tự ngắt dòng này Crh[10] cho VBA/Excel

W

woef20

Thành viên mới

JoinedOct 9, 2013Messages6

  • 9 tháng 10 năm 2013
  • #1

xin chào,

Tôi có một cột chứa tất cả văn bản thẻ html trong đó. Tôi muốn cột đó được sao chép vào một cột khác nhưng với văn bản có định dạng.

ô av11 =

Legwear size plus by Cette. Doorlopende, semitransparante panty met stippen, Lycra, versterkte tippen, platte naden. Verkrijgbaar in alle winkels en online.



cell be11 = Legwear size plus của Cette. Doorlopende, panty bán trong suốt với stippen, Lycra, versterkte tippen, platte naden. Verkrijgbaar in alle winkels en online.

Tôi dùng excel 2010.

Bạn có thể hỗ trợ không, làm ơn.
Wim

 

P

pgc01

MrExcel MVP

JoinedApr 25, 2006Messages19,887

  • 9 tháng 10 năm 2013
  • #2

Chào Wim
Chào mừng bạn đến với diễn đàn

Bài đăng của bạn khó hiểu vì html trong chuỗi đã được thông dịch.

Tôi nghĩ bạn muốn nói rằng những gì bạn có trong ô là.

ô av11 =

Legwear size plus by Cette. Doorlopende, semitransparante panty met stippen, Lycra, versterkte tippen, platte naden. Verkrijgbaar in alle winkels en online.

Hy vọng điều này sẽ giúp mọi người hiểu rõ hơn về vấn đề này.

Đề xuất. nếu bạn đang ở trong windows, tôi nghĩ bạn chỉ cần sao chép văn bản vào khay nhớ tạm của windows rồi dán vào ô.
Khi nào có thời gian, nếu vẫn chưa giải quyết được vấn đề này, tôi sẽ cố gắng đăng giải pháp.

 

W

woef20

Thành viên mới

JoinedOct 9, 2013Messages6

  • 9 tháng 10 năm 2013
  • #3

vâng, ý tôi là vậy. Rất cảm kích nếu bạn có thể dành chút thời gian

pgc01 said.

Chào Wim
Chào mừng bạn đến với diễn đàn

Bài đăng của bạn khó hiểu vì html trong chuỗi đã được thông dịch.

Tôi nghĩ bạn muốn nói rằng những gì bạn có trong ô là.

ô av11 =

Legwear size plus by Cette. Doorlopende, semitransparante panty met stippen, Lycra, versterkte tippen, platte naden. Verkrijgbaar in alle winkels en online.

Hy vọng điều này sẽ giúp mọi người hiểu rõ hơn về vấn đề này.

Đề xuất. nếu bạn đang ở trong windows, tôi nghĩ bạn chỉ cần sao chép văn bản vào khay nhớ tạm của windows rồi dán vào ô.
Khi nào có thời gian, nếu vẫn chưa giải quyết được vấn đề này, tôi sẽ cố gắng đăng giải pháp.

Bấm để mở rộng

 

P

pgc01

MrExcel MVP

JoinedApr 25, 2006Messages19,887

  • 9 tháng 10 năm 2013
  • #4

Xin chào

Mã này sao chép nội dung trong A1 vào khay nhớ tạm của windows rồi đưa nội dung đó trở lại ô B1.

Đặt tham chiếu thành. Biểu mẫu Microsoft 2. 0 Thư viện đối tượng

Mã.

Sub Test[]

With New DataObject
    .SetText Range["A1"].Value
    .PutInClipboard
End With
Range["B1"].PasteSpecial Format:="Unicode Text"
End Sub


Please test.

 

Phản ứng. woef20

W

woef20

Thành viên mới

JoinedOct 9, 2013Messages6

  • 9 tháng 10 năm 2013
  • #5

bỏ qua
Phạm vi["B1"]. Dán Định dạng Đặc biệt. ="Văn bản Unicode"

có lỗi không thể tìm thấy đối số. "Định dạng. =" được chọn màu xanh lam

pgc01 said.

Xin chào

Mã này sao chép nội dung trong A1 vào khay nhớ tạm của windows rồi đưa nội dung đó trở lại ô B1.

Đặt tham chiếu thành. Biểu mẫu Microsoft 2. 0 Thư viện đối tượng

Mã.

Sub Test[]

With New DataObject
    .SetText Range["A1"].Value
    .PutInClipboard
End With
Range["B1"].PasteSpecial Format:="Unicode Text"
End Sub


Please test.

Bấm để mở rộng

 

P

pgc01

MrExcel MVP

JoinedApr 25, 2006Messages19,887

  • 9 tháng 10 năm 2013
  • #6

Xin lỗi, hãy thử mà không có đối số.

Mã.

Range["B1"].PasteSpecial

 

Phản ứng. woef20

W

woef20

Thành viên mới

JoinedOct 9, 2013Messages6

  • 9 tháng 10 năm 2013
  • #7

nhưng. . khi tôi sử dụng pastespecial mà không có định dạng. = "uni. " Nó hoạt động như một say mê.

Vì vậy, Xin chân thành cảm ơn bạn.


woef20 đã nói.

bỏ qua
Phạm vi["B1"]. Dán Định dạng Đặc biệt. ="Văn bản Unicode"

có lỗi không thể tìm thấy đối số. "Định dạng. =" được chọn màu xanh lam

Bấm để mở rộng

 

P

pgc01

MrExcel MVP

JoinedApr 25, 2006Messages19,887

  • 9 tháng 10 năm 2013
  • #số 8

Tôi rất vui vì nó đã giúp ích cho bạn.

Nhận xét.

Tại sao tôi đăng mã với đối số Định dạng.

Tôi đã thử lần đầu với phương thức PasteSpecial của trang tính, phương thức này hỗ trợ đối số Định dạng và nó hoạt động tốt.

Tuy nhiên, tôi không hài lòng với nó vì nó yêu cầu chọn ô mục tiêu.

Sau đó tôi đã thử nghiệm với phương pháp PasteSpecial của ô, cái này có ưu điểm là không yêu cầu chọn ô mục tiêu và nó hoạt động tốt, nhưng quên xóa đối số Định dạng trong bài viết.

 

Chỉnh sửa lần cuối. 9 tháng 10 năm 2013

W

woef20

Thành viên mới

JoinedOct 9, 2013Messages6

  • 9 tháng 10 năm 2013
  • #9

nó hoạt động như một bùa mê. Vì vậy, xin chân thành cảm ơn bạn.

bạn có thể chuyển đổi phụ này thành một chức năng không? .


pgc01 said:

Xin lỗi, hãy thử mà không có đối số.

Mã.

Range["B1"].PasteSpecial

Bấm để mở rộng

 

P

pgc01

MrExcel MVP

JoinedApr 25, 2006Messages19,887

  • 9 tháng 10 năm 2013
  • #10

woef20 anh ấy nói

bạn có thể chuyển đổi phụ này thành một hàm không?

Bấm để mở rộng


Nếu ý bạn là udf, một hàm được sử dụng trong một công thức trong một ô, tôi không nghĩ là có thể.

Theo như tôi biết, tất cả các ký tự trong văn bản được hiển thị trong một ô do kết quả của một công thức sẽ luôn có cùng định dạng.

 

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

Chúng tôi có thể chuyển đổi HTML sang Excel không?

Để chuyển đổi định dạng HTML sang Excel, chỉ cần kéo và thả tệp HTML vào khu vực tải lên dữ liệu, chỉ định các tùy chọn chuyển đổi, nhấp vào nút 'Chuyển đổi' và nhận tệp Excel đầu ra của bạn sau vài giây

Excel có thể diễn giải HTML không?

Rất tiếc câu trả lời là không . Excel có hai tùy chọn HTML. Mở một tệp HTML, tệp này sẽ sắp xếp hiển thị HTML, nhưng sẽ không chứa bất kỳ HTML thực tế nào trong các ô. Lưu trữ HTML trong các ô, nhưng dưới dạng văn bản chưa được định dạng.

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 .

Chủ Đề