
Tengo un archivo .txt, donde tengo números como-
99.69599
100.7113
101.7196
123.93
pero cada vez que los exporto para sobresalir, se vuelven así:
9.969.599
1.007.113
1.017.196
123.93
tenga en cuenta que los números en el archivo .txt están en formato inglés de EE. UU., pero Excel está en formato alemán. por lo tanto, en Excel (formato alemán), el punto decimal y la coma son opuestos, lo que significa que se usa "." significar "," y "," significar ".".
- Separadores de miles y decimales de EE.UU./inglés:
1,234.56
- Separadores de miles y decimales europeos:
1.234,56
y el principal problema es que Excel, por alguna razón, está cambiando el punto decimal cuando se exportan los números. ¿Alguien puede ayudarme con este problema?
Respuesta1
Dos cosas ya que la técnica para realizar el trabajo básicamente ya está respondida:
1) El problema surge porque Excel interpreta el texto como si tuviera el formato alemán, por lo que SU Excel considera los puntos, que son separadores decimales en el uso en inglés, como agrupadores de enteros fuera de lugar. Por ejemplo, pensaría que "99.34567" es lo que un inglés que usa Excel vería como "99,34567" y que algún error colocó la coma. Luego lo arregla por usted y coloca "correctamente" los separadores.
Puede solucionarlo antes de importarlo, lo cual se hace fácilmente con cualquier programa simple como NotePad o WordPad, y preferirá hacerlo si está importando el archivo abriéndolo con Excel.
Si Excel ya está abierto y está importando al Excel ya abierto, simplemente puede formatear la columna en la que volcará los datos como Texto ANTES de volcar los datos y luego realizar las operaciones descritas en Excel. Lo que te parezca bien.
2) NO inserte una comilla simple ( ' ) porque en muchos, muchos casos Excel NO la pondrá disponible para eliminarla y tendrá que seguir un par de pasos adicionales para obtener números limpios. Quizás no TODOS los casos, pero muchísimos...
Respuesta2
Al volver a leer los comentarios (al momento de escribir este artículo), parece que la forma "sensata" (¡agnóstica regional!) de hacer esto es
- asegúrese de que los números aparezcan como texto inicialmente (después de la importación).
- Luego reemplace el/cualquier separador de miles con una cadena nula (""),
- seguido de un reemplazo del separador decimal por el que realmente usa Excel.
- Luego haga "Sumar cero" (o multiplique por uno) usando Pegado especial, haciendo que los datos de texto de Excelformateocambie a "número", después de seleccionar todos los datos.
El primer paso puede requerir (necesitar) algo de sed
, awk
(inserte aquí el nombre del dispositivo de secuencias de comandos favorito) o "magia de Python", por ejemplo, insertar una comilla simple '
antes de todos los números, lo que Excel interpreta como un marcador literal de "Esto es texto".
El último paso es:
Ingrese un 1 en una celda aleatoria, seleccione la celda y cópiela, luego seleccione los datos que desea transformar y haga "Pegado especial", seleccione multiplicar en el diálogo, haga clic en Aceptar.