Mostrando entradas con la etiqueta Decimales. Mostrar todas las entradas
Mostrando entradas con la etiqueta Decimales. Mostrar todas las entradas

2014-04-01

Exportar tabla como archivo de texto sin truncar los decimales

Title
Si en Access tratamos de exportar una tabla a un archivo de texto, los campos numéricos exportados conservarán como máximo 2 decimales. Para evitar que se trunque el campo, creamos una consulta en la que especificaremos el número de decimales del campo.

Por ejemplo, para conservar 6 decimales del CampoNumerico:

1. Creamos una consulta con el campo:

Campo: Format([Tabla1]![CampoNumerico];"0,000000")
2. Guardamos la consulta.
3. Exportamos la consulta, la seleccionamos y:
  • Botón secundario del ratón > Exportar > Archivo de texto; o bien
  • En la ficha Datos externos, en el grupo Exportar, Archivo de texto:

Entradas relacionadas

2013-08-05

Importar un fichero de texto en Access conservando los decimales

Es posible que al importar un fichero de texto, en alguno de los campos numéricos se trunquen los decimales. Una posible causa es que ninguno de los 25 primeros registros de ese campo incluya decimales. Access evalua las 25 primeras filas y determina el tipo de dato para los campos de la tabla. Si no encuentra ningún decimal en los 25 primeros registros de un campo sugiere como tipo de dato el entero largo, en lugar del doble.

Para corregir este comportamiento y conservar los decimales de un campo numérico al que Access asigna el tipo entero largo, tenemos dos opciones dentro del Asistente para importación de texto:

Opción1- 

Seleccionamos el campo (clic sobre la columna correspondiente) y en el desplegable Tipo de dato, escogemos Doble y presionamos Siguiente.


Opción2- 

Hacemos clic sobre Avanzado... y en el desplegable Tipo de dato, escogemos Doble, y clic sobre Aceptar.


Otra manera menos eficiente sería importar el campo como texto y luego transformarlo en numérico con una consulta.

2013-03-22

Generar números aleatorios entre dos valores con decimales

Title

Excel para Microsoft 365

Utilizamos la función MATRIZALEAT con la que podemos elegir, entre un mínimo y un máximo, si queremos que nos devuelva números enteros o valores decimales. También podemos elegir el número de filas y columnas a rellenar. Si deseamos copiar o arrastrar la fórmula dejamos dichos argumentos vacíos:

=MATRIZALEAT(,,0,10)

Versiones anteriores

En Excel hay dos funciones para generar número aleatorios:

  1. ALEATORIO, que genera un número aleatorio entre 0 y 1, con hasta 15 decimales. 
  2. ALEATORIO.ENTRE, que genera un número aleatorio entre dos límites especificados.
Pero si necesitamos un número aleatorio entre dos valores con decimales, no podemos usar directamente ALEATORIO.ENTRE pues genera solamente números enteros. Para circunvenir esta limitación, siendo a el límite inferior y b el superior, podemos usar:

=a+ALEATORIO()*(b-a)
Otra opción es multiplicar los dos límites por un 1 seguido de tantos ceros como decimales necesitemos, y luego dividir el resultado por dicho número. Por ejemplo, si necesitamos dos decimales, por cien:

=ALEATORIO.ENTRE(a*100;b*100)/100 'O si no queremos repetir 3 veces 100
=ALEATORIO.ENTRE(a;b)+ALEATORIO.ENTRE(a;b)/100
Con ALEATORIO, encontramos la limitación opuesta, si deseamos generar números enteros. REDONDEAR permite especificar el número de decimales. Por ejemplo, si queremos obtener ceros o unos:

=REDONDEAR(ALEATORIO();0)'O simplemente
=ALEATORIO.ENTRE(0;1)
Porque si usamos:

=ENTERO(ALEATORIO())
obtendremos siempre ceros pues ENTERO redondea al entero inferior más próximo.

Entradas relacionadas

Nube de datos