J'ai besoin de copier environ 15 000 lignes de données d'une requête MS SQL vers une feuille de calcul Excel 2007. Certaines cellules contiennent du HTML en texte brut, et la plupart d'entre elles comprennent des tableaux HTML. Je veux que le HTML reste du texte brut dans Excel, les balises et tout; mais peu importe ce que je fais, Excel voit les balises et affiche le tableau, ce qui gâche complètement la feuille. Le formatage des cellules en tant que texte ne fonctionne pas. Collage spécial> Le texte ne fonctionne pas. Copier le texte de la cellule individuelle contenant du HTML directement dans la barre de formule fonctionne, mais ce n'est pas vraiment une solution réalisable pour 15 000 lignes.
Je sais qu'il est possible de garder HTML en texte brut car je l'ai géré une fois; Je ne me souviens juste pas comment. J'ai également vu d'autres questions de personnes ayant le problème opposé, donc la fonctionnalité existe définitivement.
Je suis incroyablement frustré et apprécierais profondément votre aide.
Éditer:
@variant: le collage dans le bloc-notes et la copie du texte à partir de celui-ci produisent les mêmes résultats que la copie directe des résultats de la requête. De plus, les données collées dans le Bloc-notes deviennent délimitées par des tabulations et il y a des onglets en retrait dans le HTML, donc même si cela supprimait la mise en forme, je penserais que cela gâcherait les colonnes. Le texte contient également des virgules, donc l'enregistrement au format .csv n'aide pas non plus. (Je l'ai essayé.)
@Jay: Voici un exemple de code HTML, avec du texte non pertinent remplacé. Désolé pour le défilement horizontal - puisqu'il s'agit d' une question de formatage, j'ai pensé qu'il serait préférable de coller le texte tel quel. (Je sais que les <li>
balises ne sont pas fermées; je ne suis pas concerné par la correction du mauvais HTML dans ce cas.)
<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>
Réponses:
Ce qui a finalement fonctionné a été de réécrire la requête SQL pour ajouter un canal (|) entre tous les champs (puisque le canal n'apparaissait dans aucun des textes), puis d'enregistrer les résultats dans un fichier texte et de l'importer en tant que données délimitées par des canaux, mettre en forme chaque colonne sous forme de texte dans la boîte de dialogue d'importation.
la source
Vérifiez si vous disposez de balises actives HTML. Cliquez sur le bouton Microsoft Office > Options Excel > Vérification > Options de correction automatique > Balises actives . Décochez Intégrer les balises actives dans ce classeur . Enregistrez votre fichier et redémarrez Excel. Voyez si cela aide.
la source
Excel essaie d'être utile. Vous avez la balise table, donc elle suppose que toutes les valeurs <td> sont des cellules.
Avant de copier les cellules, sélectionnez-les, effectuez une opération de formatage des cellules (dans le menu droit de la souris) et dans l'onglet Nombre, sélectionnez le texte.
Je ne l'ai pas testé sur votre chaîne, mais je l'ai testé sur cette chaîne:
Avec un formatage général, il colle deux cellules avec des valeurs de 1 et 2 Avec un formatage défini sur texte, il colle la chaîne de texte entière dans une seule cellule.
la source
Collez d'abord le texte dans votre éditeur de texte. Effectuez un remplacement pour "<" et remplacez-le par un caractère inutilisé (comme ^). Copiez le texte et collez-le dans Excel. Une fois dans Excel, vous pouvez remplacer tous les ^ par <.
la source