Cómo eliminar guiones de una lista de valores con funciones o reemplazo en Excel

Esta es una consulta que dejó un usuario de Excel en un foro a la cuál respondí, con la consiguiente respuesta de agradecimiento por su parte vía email.

Amigos, tengo un problema con un dato alfanumérico. 
a) 1,578.26-
 
b) .05-
 
c) 826.00-
 

como verán, yo quiero extraer solo el numero entero y su parte decimal y quiero que la formula me extraiga y me muestre los numeros asi sin el bendito guion (-) que aparece al final de cada numero y por ese guion el excel 2010 me lo considera con texto y no como munero: 
el resultado de la formula debe mostrarme este resultado asi: 
a) 1,578.26
 
b) .05
 
c) 826.00
 
ya he buscado en la web y no encuentro una formula que me ayuden a solucionar mi problema. 
gracias de antemano al que me de la respuesta. 



Reproducimos el problema a continuación. Cómo podemos observar el usuario probablemente haya importado los datos de otra aplicación que o bien añade guiones al final o sólo cuando los números son negativos, muy típico en programas como ASAP.
Podemos observar cómo al llevar un guión al final, Excel interpreta que es texto y no número, lo cual supone un problema a la hora de realizar cálculos.


Hay dos soluciones muy sencillas.

SOLUCIÓN 1: Mediante la Técnica de Reemplazo

 è Seleccionamos los números que queremos



 è Activamos la herramienta Reemplazar desde Ficha Inicio – Grupo Modificar – Buscar y Seleccionar – Reemplazar… (Ctrl + L)



 è En el apartado Buscar: escribimos un guión
 è Dejamos el apartado Reemplazar con: vacío
 è Hacemos clic en Reemplazar todos



è Excel mostrará un mensaje informándonos que ha finalizado la búsqueda y el número de reemplazos efectuados


 è Cerramos el cuadro de diálogo Buscar y reemplazar



Observa cómo  Excel ha eliminado los guiones y ha convertido los valores a número, razón por la cual aparecen alineados a la derecha.




SOLUCIÓN 2: Mediante Funciones

 è Mediante la siguiente función =IZQUIERDA(A1;LARGO(A1)-1)



Es decir, muéstrame el número de caracteres del contenido de la celda A1 que yo te indique a continuación. Para indicar cuántos caracteres quiero que devuelva le digo que quiero el largo, es decir, todos los caracteres de la celda A1 menos 1.
El problema es que esta función sigue almacenando los valores como texto y no como número, lo cual nos impide realizar cálculos. Para solucionar esto hemos de multiplicar por 1 para convertir el resultado a número.



Por tanto, la función definitiva quedaría así: =IZQUIERDA(A1;LARGO(A1)-1)*1




Como llamar a una función BUSCARV simplificada con VBA en Excel 2007

Buenas, me gustaría saber cómo puedo crear la función BUSCARV de tal manera que sólo me pida el dato a buscar y al ejecutarla me haga todo el cálculo. Gracias.

Mucha gente cree que ha de crear una UDF o Función Definida por el Usuario, pero lo cierto es que las funciones primitivas de Excel están creadas en C++ que es un lenguaje mucho más potente que Visual Basic, por lo que no merece la pena intentar recrear la función en VBA ya que será mucho más lenta.

La mejor solución es llamar a la función BUSCARV desde VBA.

Imaginemos que tenemos esta tabla de datos como origen de datos


Si queremos hallar el apellido de Segismundo, utilizaríamos la función BUSCARV de la siguiente manera:
=BUSCARV(A4;$A$2:$B$5;2). Recuerda que los datos de la tabla han de estar ordenados para que la función muestre los datos correctamente y no dé un error. Así, en este caso, al indicar como valor buscado A4 (Segismundo) nos devuelve el valor correspondiente (García)


Si lo que queremos es utilizar la función BUSCARV de manera más simple, teniendo solo que señalar el valor buscado hemos de crear una macro.


Activamos el Editor VBA con ALT + F11
Insertamos un módulo desde Insertar - Módulo


 Nuestro módulo aparecerá bajo la carpeta Módulos del explorador de VISUAL bASIC


En la ventana de la derecha pegamos el siguiente código


Sub Buscarvsimplificado() Creamos el nombre de la macro
Dim valorb As String  Definimos el tipo de dato
valorb = Application.InputBox("Valor Buscado", "Función BUSCARV Simplificada") Creamos el cuadro de introducción de datos
ActiveCell = Application.VLookup(valorb, Range("$A$2:$B$5"), 2)
 Indicamos que devuelva el resultado de la función BUSCARV en la celda seleccionada
End Sub



 Ficha programador - Código - Macros



Seleccionamos la macro Buscarvsimplificado
Hacemos clic en Opciones...



Asignamos las teclas de método abreviado y hacemos clic en Aceptar

Al pulsar en el atajo de teclas, en este caso, Ctrl + N se ejecutará la macro  mostrándose el cuadro de diálogo que nos solicitará que introduzcamos el valor que deseemos. Puede ser texto o podemos seleccionar la celda en la que se encuentra el valor.


Hacemos clic en Aceptar y observamos cómo nos muestra el resultado correctamente


Por último, para que funcione la macro si estamos en Excel 2007, hemos de guardar el libro de trabajo como Libro de Excel habilitado para macros, de lo contrario, el código no se ejecutará.


Nota: Cuidado al asignar las teclas de método abreviado, ya que si las que seleccionamos ya tiene asociadas una acción, dejará de funcionar para que nuestra macro funcione. En nuestro ejemplo, CTRL + N sirve para aplicar negrita. Si asignamos la macro a dicha combinación de teclas, no podremos aplicar negrita.

Y así es cómo creamos macros en Excel 2007

Si tienes alguna duda sobre este artículo, crees que hay algo incorrecto (falta de ortografía, error en la imagen), una solución más sencilla o distinta, algo no te ha quedado claro o simplemente quieres saber más sobre ésta u otras funciones o posibilidades y no quieres dejar un comentario, rellena el Formulario de Contacto de la derecha.Te contestaré personalmente.

Cómo mostrar dos series en un mismo gráfico

Hola, ¿Quería saber cómo puedo tener dos ejes en un mismo gráfico? Vuestro blog es estupendo.

Es muy sencillo. Para ello, has de tener dos series de datos. Tomemos como ejemplo esta simple tabla.


A continuación, creamos un gráfico simple, desde Insertar - Gráficos - Columna


Aquí tenemos nuestro gráfico creado a partir de la tabla


Para mostrar la segunda serie de datos, hacemos clic con botón derecho sobre cualquiera de las columnas de datos del gráfico y seleccionamos Dar formato a serie de datos


En el cuadro de diálogo Formato de serie de datos, hemos de seleccionar la opción Eje secundario


Al cerrar el cuadro de diálogo, nuestra segunda serie de datos se mostrará en el lado derecho



NOTA: Si no aparece la opción eje secundario, has de cambiar el tipo de gráfico. Por ejemplo, si es columna apilada, no mostrará la segunda serie de datos, sin embargo, la agrupada sí lo mostrará.

Cómo convertir el resultado de la función AHORA en fijo

¿Alguien sabe cómo se puede convertir el resultado de una función volátil como, por ejemplo, AHORA() en un valor fijo?

Cuando utilizamos funciones volátiles como HOY() o AHORA(), nos encontramos con el problema de que cada vez que actualizamos la hoja de cálculo, esta función se actualiza con la fecha y hora actual en vez de la fecha y hora de la primera vez que realizamos el primer cálculo.


Como podemos observar, cuando realizamos el primer cálculo, nos muestra una fecha y una hora


Pero si volvemos a actualizar la hoja, o abrimos el libro posteriormente, los datos se vuelven a calcular. En el ejemplo, al actualizar la hoja un minuto más tarde, la hora muestra dicho cambio.

 SOLUCIÓN:

Haz clic con el botón derecho del ratón sobre el lateral de la celda que contiene la función volátil, en este caso AHORA()



 Arrastra el ratón sin soltar el botón a una celda adyacente




Y sin soltar el ratón vuelve a la celda actual.


En nuestro ejemplo arrastramos con botón derecho hasta la celda B2 y sin soltar el botón derecho del ratón, volvemos a la celda A1, en donde ya soltamos el botón.
Al hacerlo, aparecerá un menú contextual con una serie de opciones.
Elegimos Copiar aquí sólo como valores

Como podemos observar en la barra de fórmulas, se nos indica que el valor ha quedado fijo.

Quitar salto de página Excel 2007

He aplicado la Vista previa de salto de página y cuando he vuelto a la vista normal me aparecen puntos discontinuos y no puedo quitarlos

Eso tiene una solución sencilla. Suponemos que te ha ocurrido algo así:

Tienes datos en una hoja

Has hecho clic en la zona inferior derecha Vista previa de salto de página o bien desde Vista - Vistas de libro - Vista previa de salto de página


Excel 2007 ha creado las divisiones de salto de página y has pulsado Aceptar

Cuando has vuelto a la vista Normal

Te has encontrado con una serie de lineas discontinuas que no podías quitar.

Esto tiene una sencilla solución visual.

Botón Office

Hacemos clic en Opciones de Excel

Seleccionamos Avanzadas en el menú de la izquierda
Nos desplazamos hasta la sección Mostrar opciones para esta hoja
Desactivamos la casilla Mostrar saltos de página
Hacemos clic en Aceptar



Y Voilà, la línea de salto de página ya no se muestra.


Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Top WordPress Themes