Importar CSV con saltos de línea en Excel 2007

Estoy trabajando en una función para exportar los resultados de una búsqueda a un archivo CSV para abrirlo en Excel. Uno de los campos es de texto libre y puede contener saltos de línea, comas, citas, etc. Para evitarlo, he encerrado el campo entre comillas dobles (").

Sin embargo, cuando importo los datos a Excel 2007, establezco el delimitador adecuado y configuro el calificador de texto como comillas dobles, los saltos de línea siguen creando nuevos registros en los saltos de línea, donde yo esperaría ver todo el campo de texto en una sola celda.

También he intentado reemplazar CR/LF (\r\n) con sólo CR (\r), y de nuevo con sólo LF (\n), pero no ha habido suerte.

¿Alguien más ha encontrado este comportamiento, y si es así, ¿cómo solucionarlo?

TIA,
-J

EDIT:
Aquí's un archivo rápido que escribí a mano para duplicar el problema.

ID,Nombre,Descripción
"12345","Smith, Joe","Hola
"Mi nombre es Joe";

Cuando importo esto en Excel 2007, termino con una fila de encabezado, y dos registros. Tenga en cuenta que la coma en "Smith, Joe" se maneja correctamente. Son los saltos de línea los que causan problemas.

Ninguna de las soluciones sugeridas me ha funcionado.

Lo que realmente funciona (con cualquier codificación):

Copiar / pegar datos de csv-archivo (abierto en el Editor), a continuación, realice "texto en columnas" --> no funciona, de acuerdo.

Ir a la siguiente pestaña y copiar/pegar de nuevo (lo mismo lo que ya tienes en el portapapeles) --> automágicamente funciona ahora.

Comentarios (10)
Solución

Por fin he encontrado el problema.

Resulta que estábamos escribiendo el archivo utilizando la codificación Unicode, en lugar de ASCII o UTF-8. Cambiar la codificación en el FileStream parece resolver el problema.

Gracias a todos por vuestras sugerencias.

Comentarios (6)

Si el campo contiene un espacio a la izquierda, Excel ignora la comilla doble como calificador de texto. La solución consiste en eliminar los espacios a la izquierda entre la coma (separador de campos) y la comilla doble. Por ejemplo

Roto:
Nombre,Título,Descripción
"Juan", "Sr.", "Mi descripción detallada"

Trabajo:
Nombre,Cargo,Descripción
"Juan","Sr.","Mi descripción detallada"

Comentarios (2)