Jump to content

Encontrar un texto y devolver un resultado diferente


jermmy

Recommended Posts

Tengo un problema, necesito que depende del mes me devuelva un valor, despues de ese valor que me devuelva un resultado, por ejemplo:

la celda va a decir algo como esto:

01-AUG-2010 13:08:14.00

Necesito que en otra celda fecha se ponga asi:

01/08/2010

Pero el mes puede variar por ejemplo:

01-ENE-2010 03:08:14.00

01-FEB-2010 13:52:14.00

01-MAR-2010 14:08:14.00

Yo le puse =IZQUIERDA(A1;11) y me pone por ejemplo:

01-ENE-2010 03:08:14.00 = 01-ENE-2010

Pero si le pongo formato de celda dd//mm//aaaa, no me lo pone como lo quiero. Yo encontre ejemplos en el foro buscando un texto y devolviendo un resultado pero en este caso son 12 diferentes textos lo que puede encontrar y depende de eso me devuelva el valor que es?

Link to comment
Share on other sites

Un problema que veo a simple vista...

Es el AUG... viene en ingles, y vos queres llevarlo al castellano.

Eso no te permite que el "formato" de la celda actue...

Detecta texto automaticamente (porq no interpreta Excel que AUG es AGO entendes?)

Tenes que adecuar primero esas cosas, antes de hacer el paso de fechas...

En cuanto a la formula, habras querido usar IZQUIERDA() no? xD

Saludos!

Link to comment
Share on other sites

Primero debes identificar que sólo cambian de inglés a Español: Apr, Aug y Dec... cámbialos de 1. Selecciona todos los datos.

  • CTRL+B

  • Elige reemplazar escribe Apr, y pon cambiar por Abr..

  • Reemplazar todos

Apr-Abr

Aug-Ago

Dec-Dic

Así con los 3....

Por otro lado las fórmulas texto, izquierda, derecha, extrae..... etc, etc... arrojan texto...

Sólo agrega -- posterior al = para que se haga número, y le das el formato que quieres.... quedaría así:


=--IZQUIERDA(A1;11)
[/Code]

Comentas si te sirvió....

Link to comment
Share on other sites

¡Hola!

Si los datos los tienes como fechas válidas (no como texto) quizás puedas usar la función Texto, algo así:

=TEXTO(A1,"dd/mm/aa")[/CODE]

ó

[CODE]=TEXTO(A1,"dd/mm/yy")[/CODE]

ó

[CODE]=TEXTO(A1;"dd/mm/aa")[/CODE]

dependiendo de la configuración de tu equipo.

Si no los tienes como fecha válida, sino como texto, algo así podría funcionar:

Excel 2010:

[CODE]=TEXTO(VALFECHA(IZQUIERDA(A1,11)),"dd/mm/yy")[/CODE]

anteriores:

[CODE]=TEXTO(FECHANUMERO(IZQUIERDA(A1;11));"dd/mm/aa")[/CODE]

Ten en cuenta que para cualquiera de las opciones puedes prescindir de la función Texto y simplemente darle el formato a la celda. Por ejemplo, con la última fórmula podrías simplemente usar:

[CODE]=FECHANUMERO(IZQUIERDA(A1;11))[/CODE]

y darle el formato 'dd/mm/aa' a la celda.

Bueno, algunas ideas aparte de las que ya te han dado :D. Espero que te sean de ayuda al igual que los comentarios anteriores.

Link to comment
Share on other sites

bueno compañeros gracias, pero lo resolvi de esta forma

En una hoja que oculte:

Cree una tabla con los valores en ingles y a la par el numero de mes:

JAN 01

FEB 02

MAR 03

ABR 04

MAY 05

JUN 06

JUL 07

AUG 08

SEP 09

OCT 10

NOV 11

DEC 12

y en otras celdas le puse =EXTRAER(A1;1;2) me devuelve el día y en otra celda EXTRAER (A1;8;2), me devuelve el año. y ESTRAER(A1;4;3) donde me devuelve el mes (en ingles)

Y la la par un buscarv, donde le puse que me buscara el resultado del mes en ingles en la tabla, el resultado seria el numero de mes.

Al final en la celda donde necesitaba la fecha dd/mm/año

puse: =FECHA(con sus respectivas referencias)

Ya que fecha me deja escojer el dia, mes y año en celdas diferentes.

Tal vez me complique mucho y haya formas mas facil de hacerlo pero me dio resultado....Gracias..

Link to comment
Share on other sites

Excelente si sirvio qwerty123 y sailepaty muchas gracias a los dos ahora se va a ver mas profesional la hoja. En el trabajo uso 2007 pero en la casa uso 2010

Asi quedo al final en la version 2010

=VALFECHA(REEMPLAZAR(A1;4;3;ENTERO(HALLAR(MED(A1;4;3);"JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC")/3+1)))[/CODE]

Solo sustitui los nuevos nombres de las formulas en 2010.

qwerty123 tu formula me da bien pero el año me pone 2020???

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Crear macros Excel

  • Posts

    • Tu información la graficaría en función a la actividad por día
    • Hola, Observo que el planteamiento o tu formulación está mal. 1. Todos los dias deberán sumar 24:00 horas excepto el domingo que unicamente trae información hasta las 6 de la mañana. 2. Lo que observo es que esas 24:00 los componen diferentes cortes de tiempo (Columna A) 3. Creo que lo que deberás graficar son los # de casos o cuantos eventos suceden cada dia. 4. Existen algunos días que rebasan las 24 horas, por eso agregué  el formato de días. Este es el resumen. Ya me comentarás  
    • Abre un Modulo ( Alf + F11) y copia la macro, el Archivo TXT colocalo en la misma carpeta donde se encuentyre tu archivo excel. Si observas la macro, procesará el archivo 1.TXT Sub opentxt()     Application.ScreenUpdating = False     Application.DisplayAlerts = False     Range("a1:b1000").ClearContents     Dim myfile As Variant, cad As String, fila As Long     ruta = ActiveWorkbook.Path     ChDir ruta     myfile = "1.txt"     fname = Dir(myfile)     If fname = "" Then         MsgBox "No existe archivo en esta carpeta"         Exit Sub     End If          Open myfile For Input As #1     fila = 1     Cells.Clear     While Not EOF(1)         Line Input #1, cad         Cells(fila, 2) = cad         fila = fila + 1     Wend     Close #1          Application.ScreenUpdating = True     Application.DisplayAlerts = True End Sub  
    • Si me haces el favor de enviarme la macro para  intentarlo te lo agradeceré enormemente... sirve que aprendo también un poco. 
    • Buenas noches a todos los Foristas. Hola JSD, eso está PERFECTO, de hecho es más de lo que tenía pensado. Verdaderamente ustedes saben y yo trato de aprender cada día. Qué más puedo decir? Gracias mil por todo este  trabajo. Otra cosa, descuide, que si yo acudo a ustedes es porque he agotado los pocos conocimientos que tengo. Realmente sólo requiero de un ligero "empujón", un ejemplo de la duda que tengo para yo continuar con el trabajo, porque de esa manera aprendo, fijándome en el código, analizándolo y después lo desarrollo a mis necesidades. No tengo palabras para agradecerle el gesto y el trabajo realizado. Estoy en deuda con usted y porqué no, con otros miembros de este Maravilloso FORO. Doy por cerrado el tema. Un abrazo a todos y en especial a usted JSD por su paciencia y dedicación para conmigo. Nunca lo olvidaré, por eso dije en una ocasión que lo consideraba Mi Amigo, aun cuando ni siquiera nos conocemos, pero es que su comportamiento, su manera de enfocar los temas, su actitud siempre positiva y su altruismo tienen consecuencia y esa consecuencia es  decirle AMIGO. Salud y bendiciones Un abrazo. Pino
  • Recently Browsing

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Privacy Policy