Excel bersikeras memformat HTML

9

Saya perlu menyalin sekitar 15.000 baris data dari kueri MS SQL ke spreadsheet Excel 2007. Beberapa sel berisi HTML sebagai teks biasa, dan sebagian besar di antaranya termasuk tabel HTML. Saya ingin HTML tetap teks biasa di Excel, tag dan semua; tapi apa pun yang saya lakukan, Excel melihat tag dan merender tabel, yang benar-benar mengacaukan sheet. Memformat sel sebagai teks tidak berfungsi. Rekatkan Spesial> Teks tidak berfungsi. Menyalin teks sel individual yang berisi HTML langsung ke bilah rumus TIDAK berfungsi, tapi itu sebenarnya bukan solusi yang layak untuk 15.000 baris.

Saya tahu mungkin menyimpan HTML sebagai teks biasa karena saya pernah mengaturnya; Aku hanya tidak ingat bagaimana caranya. Saya juga melihat pertanyaan lain dari orang-orang yang memiliki masalah sebaliknya, jadi fungsionalitasnya pasti ada.

Saya sangat frustrasi dan akan sangat menghargai bantuan Anda.

Edit:

@variant: Menempelkan ke Notepad dan menyalin teks dari sana menghasilkan hasil yang sama dengan menyalin hasil kueri secara langsung. Selain itu, data yang disisipkan ke Notepad menjadi dibatasi-tab, dan ada tab indentasi dalam HTML, jadi bahkan jika itu menghilangkan format, saya pikir itu akan mengacaukan kolom. Teks juga mengandung koma, jadi menyimpan sebagai .csv juga tidak membantu. (Aku memang mencobanya.)

@ Jay: Ini contoh HTML, dengan teks yang tidak relevan diganti. Maaf tentang gulir horizontal - karena ini adalah pertanyaan pemformatan, saya pikir akan lebih baik untuk menempelkan teks apa adanya. (Saya tahu <li>tag tidak ditutup; Saya tidak peduli dengan memperbaiki HTML yang buruk dalam kasus ini.)

    <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>
Mouse
sumber
Ini sedikit cara terbelakang dalam melakukan sesuatu, tetapi kadang-kadang berguna untuk menyaring hal-hal melalui notepad (yaitu, menempelkan untuk menghapus format kemudian menyalinnya lagi dari sana) sebelum menjatuhkannya ke Excel.
varian
Bisakah Anda contoh teks yang Anda coba salin / tempel ke pertanyaan ini? Saya mencoba ini: <html><head></head><body><b>bold</b></body> </html> dan saya dapat menyalin / menempelkannya dari sel ke sel.
Jay Elston
@ JayElston melihat pembaruan Mouse untuk pertanyaannya.
studiohack
Wayyy tua tetapi mungkin relevan bagi seseorang: Excel dapat menggunakan kueri SQL sebagai sumber untuk konten sel. support.office.com/en-us/article/…
Zan Lynx

Jawaban:

3

Apa yang akhirnya berhasil adalah menulis ulang kueri SQL untuk menambahkan pipa (|) di antara semua bidang (karena pipa tidak muncul di salah satu teks), lalu menyimpan hasilnya ke file teks dan mengimpornya sebagai data yang dibatasi pipa, memformat setiap kolom sebagai teks dalam dialog impor.

Mouse
sumber
Mengganggu saya, itu PITA hanya untuk copy / paste! Saya sudah menggaruk-garuk kepala saya dengan ini hari ini, jadi terima kasih!
franglais
0

Periksa apakah Anda memiliki tag cerdas HTML. Klik tombol Microsoft Office > Opsi Excel > Pemeriksaan > Opsi Koreksi Otomatis > Tag Cerdas . Hapus centang Embed tag cerdas dalam buku kerja ini . Simpan file Anda dan mulai ulang Excel. Lihat apakah ini membantu.

Ellesa
sumber
Opsi "Sematkan tag cerdas" sudah tidak dicentang.
Mouse
0

Excel berusaha membantu. Anda memiliki tag tabel, jadi ini mengasumsikan semua nilai <td> adalah sel.

Sebelum Anda menyalin sel, pilih mereka, lakukan operasi Format Cells (dari menu mouse kanan), dan pada tab Number, pilih teks.

Saya tidak mengujinya pada string Anda, tetapi saya mengujinya pada string ini:

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

Dengan pemformatan umum, ini menempel dua sel dengan nilai 1 dan 2 Dengan pemformatan diatur ke teks, itu menempel seluruh string teks ke dalam satu sel.

Jay Elston
sumber
Saya seharusnya lebih jelas pada awalnya: Saya menyalin data dari Microsoft SQL Server Management Studio, bukan dari Excel, jadi tidak ada opsi pemformatan. Namun, berdasarkan saran Anda, saya mencoba menempelkan data ke Excel, memformat sel sebagai teks (tidak ada perubahan), dan menyalin dan menempelkan sel yang baru diformat. Tetap tidak ada. Sunting: @ Jay
Mouse
@Mouse - Oh, saya harus membaca pertanyaan Anda lebih hati-hati. Saya dapat menduplikasi masalah entri teks. Ketika saya menempelkan tabel sederhana di atas dari file teks, itu menempel html mentah. Jika saya memilih sel dan melakukan pemotongan atau salin lalu tempel, itu lagi menempel html mentah. Jika saya memilih teks di bilah rumus dan menyalinnya, lalu menempelkannya ke sel (bahkan yang saya gunakan untuk mengubah format sel) itu menempelkannya sebagai dua sel terpisah dengan nilai sel saja.
Jay Elston
0

Rekatkan teks pertama ke editor teks Anda. Lakukan penggantian semua untuk "<" dan ubah ke beberapa karakter yang tidak digunakan (seperti ^). Salin teks dan tempel ke Excel. Setelah di Excel, Anda dapat mengubah semua ^ kembali ke <.

Rich Deem
sumber