Excel ยืนยันในการจัดรูปแบบ HTML


9

ฉันต้องการคัดลอกข้อมูลประมาณ 15,000 แถวจากแบบสอบถาม MS SQL ไปยังสเปรดชีต Excel 2007 บางเซลล์มี HTML เป็นข้อความธรรมดาและส่วนใหญ่จะมีตาราง HTML ฉันต้องการให้ HTML เป็นข้อความธรรมดาใน Excel, แท็กและทั้งหมด; แต่ไม่ว่าฉันจะทำอะไร Excel จะดูแท็กและแสดงตารางซึ่งทำให้แผ่นงานยุ่งเหยิง การจัดรูปแบบเซลล์เป็นข้อความไม่ทำงาน วางแบบพิเศษ> ข้อความไม่ทำงาน การคัดลอกข้อความของแต่ละเซลล์ที่มี HTML ลงในแถบสูตรไม่ทำงาน แต่นั่นไม่ใช่วิธีแก้ปัญหาที่เป็นไปได้สำหรับ 15,000 แถว

ฉันรู้ว่าเป็นไปได้ที่จะทำให้ HTML เป็นข้อความธรรมดาเพราะฉันจัดการครั้งเดียว ฉันจำไม่ได้ว่าทำยังไง ฉันเคยเห็นคำถามอื่น ๆ จากผู้ที่มีปัญหาตรงข้ามดังนั้นการทำงานจึงมีอยู่อย่างแน่นอน

ฉันผิดหวังอย่างไม่น่าเชื่อและขอขอบคุณสำหรับความช่วยเหลือของคุณ

แก้ไข:

@variant: การวางลงใน Notepad และคัดลอกข้อความจากที่นั่นจะให้ผลลัพธ์เหมือนกับการคัดลอกผลลัพธ์ของแบบสอบถามโดยตรง นอกจากนี้ข้อมูลที่วางลงใน Notepad จะกลายเป็นตัวคั่นด้วยแท็บและมีแท็บเยื้องใน HTML ดังนั้นแม้ว่าจะเป็นการลบการจัดรูปแบบฉันคิดว่ามันจะทำให้คอลัมน์ยุ่งเหยิง ข้อความยังมีเครื่องหมายจุลภาคดังนั้นการบันทึกเป็น. csv ก็ไม่ได้ช่วยอะไรเช่นกัน (ฉันลองแล้ว)

@Jay: นี่คือตัวอย่างของ HTML โดยมีการแทนที่ข้อความที่ไม่เกี่ยวข้อง ขออภัยเกี่ยวกับการเลื่อนแนวนอน - เนื่องจากเป็นคำถามการจัดรูปแบบฉันคิดว่าเป็นการดีที่สุดที่จะวางข้อความตามที่เป็น (ฉันรู้ว่า<li>แท็กไม่มีการปิดบังฉันไม่เกี่ยวข้องกับการแก้ไข HTML ที่ไม่ดีในกรณีนี้)

    <center>  <table border="1" width="400" style="border: 1 solid #808080" cellpadding="2" cellspacing="0" bordercolor="#C0C0C0">      <tr align="center">      <td bordercolor="#800000" width="100%" height="14" style="background-color:#800000;"><font color="white">Header text</font></td>      </tr>      <tr>        <td width="100%" height="14">Paragraph of text</td>      </tr>      <tr align="center">        <td bordercolor="#800000" width="100%" height="14" style="background-color:#800000;"><font color="white">More text</font></td>      </tr>      <tr>        <td width="100%" height="14">  <ul><li>Bullet point   <li>Bullet point   <li>Bullet point   <li>Bullet point   <li>Bullet point   <li>Bullet point   <li>Bullet point</ul></td>      </tr>      <tr align="center">        <td bordercolor="#800000" width="100%" height="14" style="background-color:#800000;"><font color="white">More text</font></td>      </tr>      <tr>        <td width="100%" height="14">Some final text</td>      </tr>    </table>  </center>

เป็นวิธีย้อนหลังในการทำสิ่งต่าง ๆ แต่บางครั้งก็มีประโยชน์ในการกรองสิ่งต่าง ๆ ผ่านทาง Notepad (เช่นการวางเพื่อตัดรูปแบบแล้วคัดลอกอีกครั้งจากที่นั่น) ก่อนที่จะวางลงใน Excel
ตัวแปรที่

คุณสามารถยกตัวอย่างข้อความที่คุณพยายามจะคัดลอก / วางไปที่คำถามนี้ได้หรือไม่? ฉันลองทำสิ่งนี้แล้ว: <html><head></head><body><bold</min</body> </html> และฉันก็สามารถคัดลอก / วางจากเซลล์หนึ่งไปยังอีกเซลล์หนึ่งได้
Jay Elston

@JayElston ดูการอัปเดตของ Mouse กับคำถามของเขา
studiohack

อายุค่อนข้างมาก แต่อาจเกี่ยวข้องกับใครบางคน: Excel สามารถใช้แบบสอบถาม SQL เป็นแหล่งเนื้อหาของเซลล์ support.office.com/en-us/article/…
Zan Lynx

คำตอบ:


3

สิ่งที่ทำงานได้ในที่สุดก็คือการเขียนแบบสอบถาม SQL เพื่อเพิ่มไปป์ (|) ระหว่างเขตข้อมูลทั้งหมด (เนื่องจากไปป์ไม่ปรากฏในข้อความใด ๆ ) จากนั้นบันทึกผลลัพธ์ไปยังไฟล์ข้อความและนำเข้าที่เป็นข้อมูลที่คั่นด้วยไปป์ จัดรูปแบบทุกคอลัมน์เป็นข้อความในกล่องโต้ตอบการนำเข้า


รบกวนฉันนั่นเป็น PITA เพียงคัดลอก / วาง! วันนี้ฉันเกาหัวด้วยสิ่งนี้เช่นกันดังนั้นขอบคุณ!
franglais

0

ตรวจสอบว่าคุณมีสมาร์ทแท็ก HTML หรือไม่ คลิกปุ่ม Microsoft Office > ตัวเลือกของ Excel > การตรวจสอบ > ตัวเลือกการแก้ไขอัตโนมัติ > สมาร์ทแท็ก ยกเลิกการทำเครื่องหมายฝังสมาร์ทแท็กในสมุดงานนี้ บันทึกไฟล์ของคุณและเริ่ม Excel ใหม่ ดูว่าสิ่งนี้จะช่วยให้


ตัวเลือก "ฝังสมาร์ทแท็ก" ไม่ได้เลือกไว้
Mouse

0

Excel พยายามเป็นประโยชน์ คุณมีแท็กตารางดังนั้นจึงถือว่าค่า <td> ทั้งหมดเป็นเซลล์

ก่อนที่คุณจะคัดลอกเซลล์ให้เลือกเซลล์ทำการดำเนินการ Format Cells (จากเมนูเมาส์ขวา) และในแท็บตัวเลขให้เลือกข้อความ

ฉันไม่ได้ทดสอบมันกับคุณ แต่ฉันทดสอบกับข้อความนี้:

<table><tr><td>1</td><td>2</td></tr></table>

ด้วยการจัดรูปแบบทั่วไปจะวางสองเซลล์ด้วยค่า 1 และ 2 ด้วยการจัดรูปแบบที่กำหนดเป็นข้อความจะวางสตริงข้อความทั้งหมดไว้ในเซลล์เดียว


ฉันควรจะชัดเจนกว่าตอนแรก: ฉันกำลังคัดลอกข้อมูลจาก Microsoft SQL Server Management Studio ไม่ใช่จาก Excel ดังนั้นจึงไม่มีตัวเลือกการจัดรูปแบบ อย่างไรก็ตามตามคำแนะนำของคุณฉันพยายามวางข้อมูลลงใน Excel จัดรูปแบบเซลล์เป็นข้อความ (ไม่มีการเปลี่ยนแปลง) และคัดลอกและวางเซลล์ที่จัดรูปแบบใหม่ ยังคงไม่มีอะไร. แก้ไข: @Jay
Mouse

@Mouse - โอ้ฉันควรอ่านคำถามของคุณให้ละเอียดยิ่งขึ้น ฉันสามารถทำซ้ำปัญหาการป้อนข้อความ เมื่อฉันวางตารางอย่างง่ายด้านบนจากไฟล์ข้อความมันจะวาง HTML ดิบ ถ้าฉันเลือกเซลล์และทำการตัดหรือคัดลอกแล้ววางมันจะวาง HTML ดิบอีกครั้ง หากฉันเลือกข้อความในแถบสูตรและคัดลอกจากนั้นวางลงในเซลล์ (แม้แต่อันที่ฉันเปลี่ยนรูปแบบเซลล์) มันจะวางเป็นสองเซลล์ที่แยกด้วยค่าของเซลล์เท่านั้น
Jay Elston

0

วางข้อความก่อนลงในตัวแก้ไขข้อความของคุณ ทำการแทนที่ทั้งหมดสำหรับ "<" และเปลี่ยนเป็นอักขระที่ไม่ได้ใช้งานบางตัว (เช่น ^) คัดลอกข้อความและวางลงใน Excel เมื่ออยู่ใน Excel คุณสามารถเปลี่ยน ^ ทั้งหมดกลับเป็น <

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.