2012-03-05 12:05:12 +0000 2012-03-05 12:05:12 +0000
14
14

Le copier/coller de données de SQL Server vers Excel divise le texte en plusieurs colonnes ?

J'ai un problème pour coller les données de la grille de résultats de SQL Server 2005 dans une feuille de calcul Excel 2007.

J'ai une requête dans SQL Server qui retourne 2 colonnes (une colonne de chiffres et une colonne de texte)

Sur un ordinateur ici, je peux heureusement copier (clic droit > copier) et ensuite juste cliquer et coller dans une feuille de calcul Excel. pas de problème.

Sur un autre ordinateur ici, lorsque j'essaie de coller dans Excel, il divise la colonne de texte et colle le texte dans plusieurs colonnes en fonction des espaces entre les mots.

Par exemple, si l'une des lignes a…

Collez-moi s'il vous plaît

…dedans alors quand je colle dans excel, il divise le texte et colle chaque mot dans une colonne séparée dans excel.

Nous avons essayé de comparer les options de SQL Server et d'excel avec l'ordinateur sur lequel il fonctionne, mais nous n'avons constaté aucune différence.

Toute idée est la bienvenue

Merci

Réponses (6)

20
20
20
2012-05-21 20:06:39 +0000

Si vous avez récemment utilisé Texte pour les colonnes, il appliquera ces paramètres à l'opération Coller. Je ne me souviens pas que cela se soit produit avant Excel 2007, mais c'est peut-être le cas. Je dois toujours revenir en arrière et le remettre à la délimitation par tabulation avant de recommencer à faire du copier-coller.

7
7
7
2013-07-09 17:00:59 +0000

Avant de coller les résultats : Data → Texte aux colonnes

  • Type de données original : Vérifier Délimité
  • Suivant
  • Délimiteurs : Décochez Espace
  • Suivant
  • Fin

Enfin, collez les résultats.

1
1
1
2015-11-13 18:40:08 +0000

J'ai découvert que si je quitte Excel, puis le redémarre, et que je recharge ma feuille de calcul, il efface le texte aux options de colonnes, de sorte que le collage fonctionne à nouveau comme prévu.

La réponse d'Hector est intéressante dans la mesure où vous n'avez pas besoin de quitter Excel, mais cela fonctionne également, et c'est assez rapide et facile.

0
0
0
2014-03-30 00:32:10 +0000

Si votre tableau contient un champ nvarchar(max), déplacez ce champ vers le bas de votre tableau. Si le type de champ est différent de nvarchar(max), identifiez le ou les champs en question et utilisez cette même technique. Enregistrez-le. Sélectionnez à nouveau la table en SQL. Si vous ne pouvez pas enregistrer sans modification, vous pouvez temporairement désactiver les avertissements pertinents dans OUTILS | OPTIONS. Cette méthode ne comporte aucun risque. Copiez et collez l'affichage de la grille SQL avec les en-têtes dans Excel. Les données peuvent toujours afficher un retour chariot mais au moins vos données sont toutes sur la même ligne. Sélectionnez ensuite tous les enregistrements de la ligne et effectuez un tri personnalisé dans la colonne ID. Tous vos enregistrements doivent maintenant être intacts et consécutifs.

0
0
0
2016-10-26 18:15:51 +0000

Une situation similaire que je rencontre de temps en temps est la division des lignes en plusieurs lignes lorsque les utilisateurs ont utilisé un caractère de retour de chariot/fil de ligne dans une colonne destinée aux commentaires. J'ai trouvé une solution qui fonctionne pour SQL 2012/2014 ici .

Ce n'est, apparemment, pas un problème dans les versions précédentes de SQL Server. Si vous ne voulez pas passer par le lien, voici comment résoudre le problème dans votre SQL :

REPLACE(REPLACE([YourColumnHere], CHAR(10), ''), CHAR(13), '')
0
0
0
2017-11-23 12:56:16 +0000

Solution à ce problème dans Excel après avoir collé l'option de clic.

“Use Text import wizard” -> Delimited -> Next Check “Tab”, check “Treat consecutive delimeter as one” -> Next Finish