¿Cómo copiar texto de varias líneas desde Excel sin comillas?

71

Cuando crea una cadena de varias líneas en una celda de Excel (usando Alt-Enter), si copia esa celda en un editor de texto, Excel agregará automáticamente comillas dobles (") alrededor de la cadena completa, es decir:

Cell1  |   Simple String 1 
Cell2  |   First line of a 
       |   Multiline string
       |   with 3 lines 
Cell3  |   Another simple line 2

Cuando copia solo la columna con valores a un editor de texto, obtenemos:

Simple String 1
"First line of a 
Multiline string
with 3 lines"
Another simple line 2

¿Cómo puedo decirle a Excel que no agregue la cita alrededor del texto de varias líneas al copiar desde Excel?


Editar: Editores de texto que he probado que muestran este comportamiento:

  • MS Word
  • Wordpad
  • Bloc
  • Notepad ++
  • SQL Server Studio

Si tiene alguna sugerencia sobre el uso de un editor en particular (o uno de los anteriores), dígame cuál y cómo usarlo ...

Andrew Bickerton
fuente
44
Para lo que vale, es porque Excel intenta generar CSV válido . Me sorprendería si esto fuera fácil de cambiar.
slhck
@slhck Espero que estés equivocado (¡buena respuesta sobre eso!), ya que sería muy útil poder decirle a Excel que no estoy copiando a csv ...
Andrew Bickerton
3
Esto es muy molesto. No hay una razón legítima por la que Excel ponga comillas alrededor del texto que contiene un retorno de carro.
oscilatingcretin
1
Google Spreadsheets hace lo mismo molesto. Estoy tratando de copiar varias celdas de datos en un archivo de texto, pero Google Spreadsheets agrega citas a los datos; las citas NO están en los datos de origen. Esto es un error para mí, no una característica.
Jonny
Hay una respuesta que usa VBA publicada aquí: stackoverflow.com/a/24913557/976210 Esto funcionó mucho mejor para mí ya que no quiero tener que usar un programa intermediario.
Kit Johnson el

Respuestas:

20

La forma en que se copia el texto en Word depende de la opción de formato elegida. En Word 2010, la opción de formato predeterminada es HTML Format. Hay cuatro opciones principales sobre cómo copiar texto en Word. ( Formatted Text (RTF)` Unformatted Text` HTML Format, & Unformatted Unicode Text)

Pegar con texto formateado crea mini tablas en Word. (Los contornos azules).

Pegar opciones especiales

Para obtener texto sin formato en Word sin las comillas dobles:

  1. Pegue el texto formateado para que cree la tabla.
  2. Seleccione la tabla y cópiela.
  3. Muévase a un lugar en blanco y pegue la nueva copia como texto sin formato. ( Alt + E, S)

Esto también funciona para pegar los resultados sin comillas en otro editor. Simplemente modifique el paso 3 para pegarlo en el otro editor.

Sin embargo, probablemente sería más rápido pegar simplemente como de costumbre y luego usar Reemplazar para buscar y eliminar todas las comillas dobles.

mischab1
fuente
¡+1 buena respuesta con técnica para resolverlo! (desafortunadamente para el bloque con el que estaba lidiando, había comillas dobles válidas que quería mantener)
Andrew Bickerton
+1 estas cosas estúpidas realmente me dan ganas de buscar un producto de oficina diferente. Tal vez una oficina estelar o algo así. gracias por el truco
bicicleta
22

Si copia un rango de Excel (2010) a Word, obtendrá el texto que desee, sin comillas. Luego puede copiarlo nuevamente a su destino final, por ejemplo, el bloc de notas. Excel-> Word-> Bloc de notas le dará los resultados que desea.

s_a
fuente
Word muestra este comportamiento cuando copia con otras celdas (como se describe en la pregunta). ¿O es algo que han ordenado en Office 2010?
Andrew Bickerton el
2
Hasta ahora, esto funciona. Sin embargo, es una lástima que tenga que usar Word 2010 como intermediario para eliminar las comillas.
oscilatingcretin
Esto también funciona para Mac Office 2011.
Lewis42
3

La forma más fácil que he encontrado es concatenar las celdas que desea que estén en varias líneas con algo "especial" entre ellas, en lugar de cr / lf. Tilde generalmente funciona bien para mí. Por ejemplo, en la columna G:

=E1&"~"&F1
=E2&"~"&F2
...

En este ejemplo, el objetivo final es obtener un archivo de texto con los valores de E1 en una línea, seguido de F1 en una nueva línea, seguido de E2, F2, etc. Por supuesto, podría haber construido G1 con la misma facilidad valores, solo incluidos ~ para los saltos de línea.

Luego, para obtener un archivo de texto de varias líneas en Notepad ++

  • Cortar y pegar en Notepad ++
  • Ctrl-H para abrir el diálogo de reemplazo
  • Asegúrese de que la opción de búsqueda "extendida" esté seleccionada
  • Reemplace todo ~ con \ n (o \ r \ n si lo prefiere)
randomScott
fuente
Como desarrollador, me gusta este ya que no requiere una tercera herramienta como Word.
VSB
2

No es problema de Excel. Como dice el póster anterior, solo está generando datos CSV válidos. Dependerá del editor que lo coloques para que se encargue de formatearlo. Sugeriría usar algo un poco más inteligente que el bloc de notas ... Puede usar MS Word como intermediario de Excel a cualquier editor de texto que quiera usar además de Word.

Michael Beck
fuente
2
Yo uso algo más que el bloc de notas ... También Word hace exactamente lo mismo (pegando solo esa celda con "'s)
Andrew Bickerton
Word 2010 con la configuración predeterminada funciona perfectamente como intermediario.
Adam Ryczkowski
Descubrí esto ayer. Estoy de acuerdo con Andrew Bickerton. No quiero copiar CSV, quiero copiar texto. Excel al menos debería preguntar. Como mi texto contenía aproximadamente dos mil inserciones de SQL, pude resolverlo más fácilmente con PsPad. A pesar de ser fácil, era completamente innecesario.
alvaroc
1

Tuve el mismo problema y seguí los siguientes pasos (estoy usando Office 2007, pero creo que también funciona para versiones posteriores):

  1. Seleccioné el rango de celdas que contienen texto de varias líneas de Excel que quiero pegar en otro editor y luego elija Copiar.
  2. En Word 2007, pegué el rango de celdas copiado como una tabla.
  3. Selecciona la tabla.
  4. En la pestaña Diseño, elija Seleccionar tabla.
  5. En la sección de datos, elija Convertir a texto y elija Marcas de párrafo.

El resultado es la tabla original convertida en texto, con caracteres de nueva línea al final de cada línea y marcas de párrafo al final de la última línea de cada celda.

Tom
fuente
1

Puede guardar el documento de Excel como una página web y luego copiar el texto de la página web. Esto funciona bien para una sola columna de datos, pero asegúrese de establecer el ancho de la columna al ancho del texto, de lo contrario agregará saltos de línea.

solvus
fuente
1

He tenido este problema hoy, así que pensé en publicar una respuesta en caso de que alguien todavía esté atrapado en él.

Puede solucionar esto resaltando la celda y luego copiando y pegando el código directamente desde la barra de texto en la parte superior haciendo clic y resaltándolo todo manualmente.

Solo hice esto en Excel 2010, así que no sé si esto funcionará para versiones anteriores.

Mate
fuente
Esto es perfecto, aunque tuve que tomar mi celda que tenía la fórmula CONCAT (A1: A100) y Pegar especial en una segunda celda antes de poder seleccionar todo del cuadro de texto como lo describiste
nvuono
1

No puede ser prepararlo para un archivo CSV porque serían bastante estúpidos, serían tan sofisticados como las celdas superiores y posteriores que contienen caracteres que no se imprimen con comillas y no hacen lo mismo para las celdas que contienen comas (lo cual no hace 't).

De todas formas. Me encontré con este problema cuando intenté crear etiquetas de dirección a partir de Nombre, Apellido, Línea de dirección 1 ... como:

=A1&" "&B1&CHAR(13)&CHAR(10)&C1&CHAR(13)&CHAR(10)&D1

CHAR(13)seguido de CHAR(10)ser un nuevo párrafo al ver un archivo de texto con un editor hexadecimal.

Mi forma de evitar esta molestia es:

  • Copie y pegue las celdas / columna en Word.
  • Use el menú desplegable del símbolo del portapapeles (parte inferior izquierda de la página o texto pegado) para seleccionar, Mantener solo texto .
  • Seleccione el texto pegado. Solo tiene que hacer esto si el documento contiene otras cosas que podrían verse afectadas
  • Presione Ctrl+ Hpara que aparezca el cuadro de diálogo Buscar y reemplazar .
  • En el campo, Buscar qué , escriba: "^p"(los cuatro caracteres).
    Puede que tenga que ir a Herramientas -> Opciones de Autocorrección y luego a las dos pestañas Autoformato para asegurarse de que no cambie sus comillas rectas)
  • En el campo Reemplazar con , ingrese: ^p(2 caracteres)
  • Ahora presiona el botón , Reemplazar todo ,
  • Finalmente, tendrá que eliminar manualmente las comillas dobles al principio y al final del bloque importado

Esto se basa en Office 2003, por lo que su versión de Microsoft Word puede ser ligeramente diferente.

D. Adams
fuente
0

Usé la CLEARfunción y funcionó para mí.

Ponga las celdas que desea copiar CLEAR, por ejemplo:

=clear(A1)

¿Dónde A1está la celda con los datos que desea copiar al bloc de notas sin las comillas?

wizwig
fuente
15
Creo que te refieres CLEAN. (Al menos en Excel 2010.) Sin embargo, eso eliminaría los caracteres de avance de línea y su segunda oración ya no sería multilínea.
mischab1
0

Sé que este es un tema antiguo, pero mi solución fue usar CLEAN como se sugiere, copiar esas celdas y pegar los valores nuevamente en una hoja. De esa manera, podría editar el texto hasta el resultado final y copiar y pegar las celdas en un documento de texto sin las comillas.

Creo que limpiar el texto primero y luego hacer el formateo final probablemente funcionaría (al menos, lo hizo para mí).

Alan Reeves
fuente
2
Una cosa a tener en cuenta, creo que el método "Clean" eliminará también los caracteres de retorno de carro y el pasado resultante no será de varias líneas.
0

Tuve el mismo problema, finalmente lo solucioné muy fácilmente. Tenía 600 filas de descripciones largas de productos. Para solucionar este problema, hice lo siguiente:

1) Seleccione la columna completa y haga clic en 'Ajustar texto'.

2) Manteniendo la columna seleccionada, haga clic en 'Ajustar texto' OTRA VEZ (para que el texto NO esté ajustado al 100%).

PRESTO: el texto se copió de cada celda perfectamente, sin comillas (a pesar de que eran párrafos largos).

De forma predeterminada, Excel agrega comillas a cualquier texto de varias líneas. Entonces, la solución simple, proporcionada por el proceso anterior, es garantizar que sus celdas con texto largo no se ajusten automáticamente en varias líneas.

Puede valer la pena notar que antes de hacer esto, las células se veían normales y NO parecían estar envueltas. Creo que el proceso anterior 'le dice' a Excel que NO interprete ninguna celda como texto 'multilínea', incluso si es un párrafo largo, resolviendo así el problema 'Excel agregando comillas al texto copiado'.

CompelVentures
fuente
2
Hola, no es la solución correcta. Eso solo funciona si no tiene ningún retorno de carro interno en sus celdas (presione alt-enter para crear un retorno de carro interno)
Andrew Bickerton
0

Encontré una solución fácil para esto. Instale OpenOffice Calc y abra el archivo .xlsx. Luego, simplemente copie el contenido de la celda y péguelo en cualquier editor de texto. Las molestas comillas iniciales y finales no aparecerán.

usuario863611
fuente
0

Sé que este es el año 2018, y estas publicaciones son más antiguas, pero aún así son relevantes. Me han ayudado a encontrar una solución.

  1. Puse = A2 que está mirando la celda con el Char en la fórmula.
  2. Luego copié A2 y pegué como valores en otra celda, por ejemplo A3.
  3. Entonces he seleccionado A3, presionado F2, CtrlShiftHome, CtrlC.
  4. Detente allí mismo, no pegues en otra celda de Excel. déjelo en el portapapeles y péguelo en el bloc de notas.
  5. Las citas invisibles desaparecen.

Desaparece como INXS dijo: ¡Desaparece! : =)

Es posible que alguien más haya dicho esta solución, así que disculpen, después de leer todos los ejemplos, algo se hundió en mis pensamientos y ¡todos ustedes ayudaron!

me.guest
fuente
-1

Como tú, tenía mis datos en una columna. Entonces, para copiar los valores sin esas comillas, concateno toda la columna con los datos. Esto es para las hojas de cálculo de Google Docs, pero supongo que podría funcionar para Excel, podría tener que cambiar la función CONCATENAR.

Para concatenar toda la columna G:

=CONCATENATE(G:G)

Agregó citas solo primero y último y eso es bastante fácil de editar a mano más tarde.

Jonny
fuente
no funciona para Excel
Baljeetsingh
-1

trabajando en la respuesta de solvus, podemos crear una página web de publicación automática, con solo el rango de texto que desee, sin comillas. luego puede copiar y pegar esto en otras ubicaciones. Una vez que lo configura, está ahí para siempre y actualizado sin alterar su archivo principal.

para hacer esto,...

Seleccione sus celdas y luego save as.. save as file type= Single File Web Page. con la opción Republish $ : $(su rango seleccionado)

haga clic en publicar. seleccionar AutoRepublish every time this workbook is saved.

  • a continuación, publicará una página web que contiene solo sus datos a distancia, en un formato de tabla sin comillas. copiar y pegar :)
usuario34210
fuente