Problème :
lors de la copie d'une cellule d'Excel en dehors du programme, des guillemets sont ajoutés automatiquement.
Détails :
J'utilise Excel 2007 sur une machine Windows 7. Si j'ai une cellule avec la formule suivante:
="1"&CHAR(9)&"SOME NOTES FOR LINE 1."&CHAR(9)&"2"&CHAR(9)&"SOME NOTES FOR LINE 2."
La sortie dans la cellule (formatée en nombre) ressemble à ceci dans Excel:
1SOME NOTES FOR LINE 1.2SOME NOTES FOR LINE 2.
Bel et bien. Mais, si je copie la cellule dans un autre programme, tel que le bloc-notes, j'obtiens des guillemets doubles ennuyeux au début et à la fin. Notez que les onglets créés par "CHAR (9)" sont conservés, ce qui est bien.
"1 SOME NOTES FOR LINE 1. 2 SOME NOTES FOR LINE 2."
Comment puis-je empêcher ces doubles guillemets d'apparaître lorsque je copie dans un autre programme? En d'autres termes, puis-je empêcher que ceux-ci soient ajoutés automatiquement lorsque la cellule est copiée dans le presse-papiers?
Réponses:
Si vous essayez de coller dans Word-Pad, Notepad ++ ou Word, vous n'auriez pas ce problème. Pour copier la valeur de la cellule sous forme de texte pur, pour obtenir ce que vous décrivez, vous devez utiliser une macro:
Dans le classeur où vous souhaitez que cela s'applique (ou dans votre Personal.xls si vous souhaitez utiliser sur plusieurs classeurs), placez le code suivant dans un module standard:
Code:
Pour ajouter un module standard à votre projet (classeur), ouvrez le VBE avec Alt+ F11, puis cliquez avec le bouton droit sur votre classeur dans la fenêtre de projet en haut à gauche et sélectionnez Insérer> Module. Collez le code dans la fenêtre du module de code qui s'ouvrira à droite.
De retour dans Excel, allez dans Outils> Macro> Macros et sélectionnez la macro appelée "CopyCellContents", puis choisissez Options dans la boîte de dialogue. Ici, vous pouvez attribuer la macro à une touche de raccourci (par exemple, comme CTRL+ Cpour une copie normale) - J'ai utilisé CTRL+ Q.
Ensuite, lorsque vous souhaitez copier une seule cellule dans le Bloc-notes / où que vous soyez, faites simplement Ctrl + q (ou ce que vous avez choisi), puis faites un CTRL+ Vou Édition> Coller dans la destination choisie.
Ma réponse est copiée (avec quelques ajouts) à partir de: ici
EDIT : (à partir des commentaires)
Si vous ne trouvez pas la bibliothèque Microsoft Forms 2.0 dans la liste des références, vous pouvez essayer
C:\Windows\System32\FM20.dll
(Windows 32 bits) (merci @JWhy)C:\Windows\SysWOW64\FM20.dll
(sur 64 bits)la source
J'ai juste eu ce problème et envelopper chaque cellule avec la
CLEAN
fonction l'a corrigé pour moi. Cela devrait être relativement facile à faire en=CLEAN(
sélectionnant votre cellule, puis en remplissant automatiquement le reste de la colonne. Après avoir fait cela, les collations dans le Bloc-notes ou tout autre programme n'avaient plus de guillemets en double.la source
Collez-le d'abord dans Word, puis vous pouvez le coller dans le bloc-notes et il apparaîtra sans les guillemets
la source
Si vous souhaitez sélectionner plusieurs cellules et copier leurs valeurs dans le presse-papiers sans toutes ces citations ennuyeuses, le code suivant peut être utile. Il s'agit d'une amélioration du code donné ci-dessus à partir de user3616725.
la source
Ma solution lorsque j'ai rencontré le problème des citations était de supprimer les retours chariot de la fin du texte de mes cellules. En raison de ces retours chariot (insérés par un programme externe), Excel ajoutait des guillemets à la chaîne entière.
la source
Problème possible en relation avec la réponse de "user3616725":
Im sous Windows 8.1 et il semble y avoir un problème avec le code VBA lié de la réponse acceptée de "user3616725":
Détails:
En cours d'exécution au-dessus du code et en collant le presse-papiers dans une cellule dans Excel, j'obtiens deux symboles composés de carrés avec un point d'interrogation à l'intérieur, comme ceci: ⍰⍰. Coller dans le Bloc-notes ne montre même rien.
Solution:
Après avoir cherché pendant un certain temps, j'ai trouvé un autre script VBA de l'utilisateur "Nepumuk" qui utilise l'API Windows . Voici son code qui a finalement fonctionné pour moi:
Pour l'utiliser de la même manière que le premier code VBA ci-dessus, changez le sous "Beispiel ()" de:
À:
Et exécutez-le via le menu macro Excel comme suggéré par "user3616725" de la réponse acceptée:
Edit (21 novembre 2015):
@ commentaire de "dotctor":
Non, ce n'est sérieusement pas une nouvelle question! À mon avis, c'est un bon ajout pour la réponse acceptée car ma réponse traite des problèmes auxquels vous pouvez faire face lorsque vous utilisez le code de la réponse acceptée. Si j'avais plus de réputation, j'aurais créé un commentaire.
@ commentaire de "Teepeemm":
Oui, vous avez raison, les réponses commençant par le titre "Problème:" sont trompeuses. Remplacé par: "Problème possible en relation avec la réponse de" user3616725 ":". En guise de commentaire, j'aurais certainement écrit beaucoup plus compact.
la source
"Si vous souhaitez sélectionner plusieurs cellules et copier leurs valeurs dans le presse-papiers sans toutes ces citations ennuyeuses" ( sans les bogues de la solution multi-cellules de Peter Smallwood) "le code suivant peut être utile." Ceci est une amélioration du code donné ci-dessus de Peter Smallwood (qui "est une amélioration du code donné ci-dessus de user3616725"). Cela corrige les bogues suivants dans la solution de Peter Smallwood:
REMARQUE: vous ne pourrez toujours pas copier des caractères incorporés dans une cellule qui provoqueraient une sortie du champ cible dans lequel vous collez cette cellule (c'est-à-dire Tab ou CR lors du collage dans la fenêtre d'édition de table d'Access ou SSMS).
la source
Pour conserver les sauts de ligne lors du collage dans le bloc-notes, remplacez cette ligne dans la macro:
par:
la source
Veuillez utiliser la formule ci-dessous
et vous obtiendrez ce que vous voulez ;-)
la source
Vous pouvez le faire dans une macro Excel via VBA, en envoyant les résultats dans un fichier:
Et si vous souhaitez obtenir les noms de fichiers et le contenu dans plusieurs fichiers, voici un court extrait qui évite les guillemets doubles autour de la sortie.
la source
la source
Remarque: la cause des guillemets est que lorsque les données sont déplacées d'Excel vers le Presse-papiers, elles sont entièrement conformes aux normes CSV qui incluent les valeurs de citation qui incluent des tabulations, de nouvelles lignes, etc. (et les guillemets doubles sont remplacés par deux guillemets doubles)
Donc, une autre approche, en particulier dans le cas d'OP lorsque les tabulations / nouvelles lignes sont dues à la formule, consiste à utiliser des caractères alternatifs pour les tabulations et les retours durs. J'utilise ascii Unit Separator = char (31) pour les onglets et ascii Record Separator = char (30) pour les nouvelles lignes.
Ensuite, le collage dans l'éditeur de texte n'impliquera pas les règles CSV supplémentaires et vous pouvez effectuer une recherche rapide et remplacer pour les reconvertir.
Si les onglets / nouvelles lignes sont incorporés dans les données, vous pouvez effectuer une recherche et remplacer dans Excel pour les convertir.
Qu'il s'agisse d'utiliser une formule ou de modifier les données, la clé pour choisir les délimiteurs est de ne jamais utiliser de caractères qui peuvent figurer dans les données réelles. C'est pourquoi je recommande les caractères ascii de bas niveau.
la source
Il est également possible de supprimer ces guillemets doubles en plaçant votre résultat sur la fonction "Nettoyer".
Exemple:
La sortie sera collée sans les guillemets sur d'autres programmes tels que Notepad ++.
la source