UniversoExcelForo

Respuesta a consultas.
Fecha de creación: 09.Abril.2012

Fundadores: Wibly,Tyno,Servando,Sakkar,Rosendo2,RMaximo,Railar,Mcoronel,Ioyama,Igtelo,Hugotron,Drochar,Dedos,Alberto,Adolfo

No se pueden hacer consultas de Excel o VBA por mensaje privado.
Utiliza el botón buscar del foro y te ahorras tiempo para obtener "ayuda".

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

Lehoi


Buenos días a todos

Llevo varias horas intentando reordenar unos datos que he extraído de internet sin éxito. Estoy probando algunas fórmulas pero solo consigo resolver una parte del problema, no logro hacer todo el proceso.
Lo ideal es hacerlo mediante vba, pero si alguien puede echarme una mano usando fórmulas trataré de inyectarlas con macros para lograr mi objetivo.

Saludos



Última edición por Igtelo el 01/09/16, 10:58 pm, editado 1 vez (Razón : Las imágenes no son necesarias, a menos que se soliciten...)

Igtelo


Hola Lehoi.

Cero y van dos... No subas imágenes ni dejes los archivos fuera del foro.

Lo que pides creo que ya lo contesté algunas veces, voy a buscar primero.
No recuerdo bien, tengo rato que no lo uso, pero creo que con importar datos externos o desde web se puede hacer directo, no me acuerdo bien..

Con fórmulas ni le busques, esto es mejor con macro... Después te subo algo, a ver si alguien se anima antes.

Saludos
Ignacio Téllez

Lehoi


Hola Igtelo

A estos años la memoria a veces nos juega malas pasadas, es cierto que ya me advertiste sobre lo de las imágenes y los archivos, no volverá a pasar Embarassed .
He subido el archivo al foro y en una hoja he puesto los datos como necesitaría  que se ordenasen, por lo que las imágenes ya no serían necesarias.
Si por favor puedes eliminarlas de mi mensaje, al igual que el enlace al vínculo de mega te estaría muy agradecido.
Yo he estado navegando en el foro buscando algo que me sirva, pero es que lo que pido es algo muy específico y no es fácil encontrar algo que pueda adaptar. 

Un saludo y gracias.

Lehoi
Archivos
Extracted_Data.xlsx
No tienes los permisos para descargar los archivos.
(27 KB)

Igtelo


Que tal Lehoi.

Pasame la URL de donde obtienes los datos, voy a intentar con importar datos desde web, no se si funcione, ya no me acuerdo, pero me servirá de ejercicio. Mañana lo veo.

Sino es indiscreción ¿Cuantos años tienes? Aquí los únicos viejos somos DEDOS y yo, jejeje.

Saludos
Ignacio Téllez

Lehoi


Claro como no Wink : es esta

http://www.scorespro.com/soccer/results/date/2016-08-29/

Tengo casi 46 muy rodados, y no soy de buena memoria, aunque eso tiene sus ventajas, hay películas que puedo "reestrenar" de vez en cuando  Laughing porque me vengo a dar cuenta que ya las he visto al final casi jajajaja

Un abrazo

Igtelo


jajaja, Mjuy buena, muy buena.
Ok Mañana lo veo.

Ya duérmete...

Igtelo


Buenos días Lehoi.

Por el momento te dejo un procedimiento manual, sólo ocupamos una sencilla fórmula.
Lo malo de usar tantas macros se me olvida las herramientas de Excel (obviamente la edad también cuenta. Jeje).

Si no entiendes algo de lo que digo en el video me dices y te lo escribo...

Saludos
Ignacio Téllez

Lehoi


Hoy me ha tocado desvelarme jeje... aqui son las 5:30 pero vale la pena!
Te agradezco el video que has hecho específicamente para ayudarme, he aprendido en 6 minutos cosas de excel que la verdad que no he usado nunca y me van a venir de maravilla, gracias!!
Me he reido un montón con lo de las celdas en blanco, eres un narrador con mucho sentido del humor Very Happy

Volviendo al tema del excel, yo estoy usando una macro que me va perfecta para el tema de la extracción, incluso le puedo cambiar hasta el timezone. 
He intentado usar el sistema que trae excel para extraer datos desde web y no detecta esas tablas, además incluso el Power Query que el Office 2016 trae por defecto tampoco las detecta, por lo que al final tuve que hacerlo con una macro (que vá mucho más rápido pero no puedo manipular los datos, cosa que si podría hacer con el Power query si detectara las tablas).

Esta ordenación la tengo que hacer muchas veces porque quiero hacer una pequeña base de datos experimental y necesitaré visitar muchas páginas de esa web (sin abusar claro Wink ) por eso estaba buscando reordenar con una macro.
De todas maneras no sé si el grabador de macros será capaz de reproducir los pasos que has hecho en el video (lo dudo) pero lo probaré. 
En todo caso, el tener ya una manera de hacerlo aunque sea manual, ya es un gran avance!

Bueno perdona el tocho, 
Muchas gracias y un abrazo!

Igtelo


Hola Lehoi.

Te dejo el archivo con la macro, es el procedimiento que está en el video.
Está con rangos fijos ya nada más modificas con variables para que se ajuste según cantidad de datos...

Por la noche intentaré lo de web externa.

Saludos
Ignacio Téllez
Archivos
Lehoi-Ordenar datos web.xlsm
No tienes los permisos para descargar los archivos.
(39 KB)

Lehoi


Hola Igtelo
Bueno que te puedo decir que ya no sepas, que eres un crack!
Yo había hecho una especie de frankeinstein usando la fórmula que usaste para detectar los nombres de las ligas (esa formula usando la función CODIGO va para la caja fuerte jeje) y luego usé otra fórmula (todavía no sé ni como me funcionó porque soy un negado para las fórmulas) para copiar los nombres de las ligas hacia abajo según corresponda, pero una vez más la fórmula que usaste para eso es mejor, esa es la ventaja de la experiencia, así que tengo perdón jajaja

Te agradezco todo el esfuerzo y el tiempo que has dedicado (el video es ejemplo de ello), este foro es el mejor hallazgo que he hecho en mucho tiempo!
Un abrazo!
Lehoi

Lehoi


Hola de nuevo Ignacio, este es el código que te dije que había probado, yo soy de los que cuando me aprendo algo y funciona lo uso para todo jajaja, por eso verás que uso mucho el mismo sistema para detectar la última fila usada y para inyectar fórmulas.
Verás tu fórmula usada en el código  Wink 
La columna auxiliar B también la uso para sumar 2 horas a la hora extraída (de +00:00 a +02:00).

Código:
Sub Ordena_Datos()
With Range("B2:B" & Range("D" & Rows.Count).End(xlUp).Row)
    .ClearContents
    .NumberFormat = "General"
    .FormulaR1C1 = "=IF(AND(CODE(RC[2])>64,CODE(RC[2])<123),RC[2],"""")" '=IF(AND(CODE(D2)>64,CODE(D2)<123),D2,"")
    .Value = .Value 'Convierte los resultados a valores
End With
With Range("C2:C" & Range("D" & Rows.Count).End(xlUp).Row)
    .FormulaR1C1 = "=IF(AND((RC[2]=""FT""),(R[-1]C[-1]=R[-1]C[1])),R[-1]C[-1],R[-1]C)" '=IF(AND((E2="FT"),(B1=D1)),B1,C1)
    .Value = .Value 'Convierte los resultados a valores
End With
With Range("B2:B" & Range("D" & Rows.Count).End(xlUp).Row)
    .ClearContents
    .FormulaR1C1 = "=R1C[-1]+RC[2]" '=A$1+D2
    .Value = Range("B2:B" & Range("D" & Rows.Count).End(xlUp).Row).Value 'Convierte los resultados a valores
    .NumberFormat = "dd-mm-yyyy hh:mm"
End With
With Range("D2:D" & Range("B" & Rows.Count).End(xlUp).Row)
    .ClearContents
    .NumberFormat = "General"
    .FormulaR1C1 = "=RC[-2]+""02:00"""  '=B2+"02:00"
    .Value = .Value
End With
Range("B2:B" & Range("D" & Rows.Count).End(xlUp).Row).ClearContents
'Elimina todas las filas en que en la columna E haya celdas en blanco
Range("E2:E" & Range("D65536").End(xlUp).Row).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub

Por cierto en tu código hay algunos detalles muy útiles como la opción de autorellenar en números, esa línea me viene genial!
saludos

Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.