
mjrofra
Members-
Content Count
2,696 -
Joined
-
Last visited
-
Days Won
13
Content Type
Profiles
Forums
Downloads
Everything posted by mjrofra
-
Como crear una funcion que retorne un valor String
mjrofra replied to niqlas's topic in Macros y programación VBA
En VBA asignas el valor que quieres devolver al nombre de la función, no usas return: function f(a, as string f = a & b end function -
Como generar un completo juego de símbolos gráficos
mjrofra replied to pegones1's topic in Ideas y aportes
... pues el "zumbao" soy yo. -
Macro, he descargado tu archivo porque no entendía de qué hablabas. Al abrirlo entendí y me acordé inmediatamente de haberlo visto hace ya rato. Chandoo lo había publicado (Interactive Dashboard in Excel using Hyperlinks | Chandoo.org - Learn Microsoft Excel Online) y el autor-descubridor (o al menos el que lo publicó primero) parece que fue un tal Jordan Goldmeier (How to Create a Rollover Effect in Excel: Execute a Macro When Your Mouse is over a Cell | OPTION EXPLICIT VBA)
-
Como generar un completo juego de símbolos gráficos
mjrofra replied to pegones1's topic in Ideas y aportes
Macro, pues creo que es lo segundo. Aunque seguro Pedro se refiere a juego / ajedrez (o dolor / cabeza), eso no quita que esté un poco "zumbao". -
Error en los objetos del diccionario con WIN7
mjrofra replied to pegones1's topic in Macros y programación VBA
Hola Pedro, lamento no contar con el tiempo para verificar con profundidad. He intentado reproducir tu error en mi máquina (win8 excel 2013-64 bits) y no lo he conseguido. En todo caso, quizás puedas hacer algunas pruebas con algo así: Sub prueba1() With ActiveSheet.Shapes("Diagram image") .CopyPicture With ActiveSheet.ChartObjects.Add(.Left, .Top, .Width * 2, .Height * 2).Chart .Paste .Export ThisWorkbook.Path & "/imagen_tal.gif" .Parent.Delete End With End With End Sub[/CODE] [CODE]Sub prueba2() Dim img As Excel.Shape Set img = ActiveSheet.Shapes("Diagram image") img.CopyPicture With ActiveSheet.Shapes.AddChart .Height = img.Height * 2 .Width = img.Width * 2 .Chart.Paste .Chart.Export ThisWorkbook.Path & "/imagen_tal.gif" .Delete End With End Sub[/CODE] Observa que estamos jugando con la forma de crear el gráfico, que es donde parece que está el error (¿?). -
Error en los objetos del diccionario con WIN7
mjrofra replied to pegones1's topic in Macros y programación VBA
Hola Pedro, Gran alegría poder saludarte. Seguro que tu manejas estos temas mejor que yo, pero por si vale de algo, te dejo mis dos centavos sobre el tema de los enlaces anticipados y tardias (en una discusión ya vieja en la que también participo el maestro neverdelimon1). No he descargado tu archivo ni revisado tu problema, sólo me acordé por tu pregunta de esa vieja discusión a la que te remito: Foro Excel • Ver Tema - VB 6 con Excel 2007 SOS SOS SOS -
Abrir IE en una pagina específica desde excel y loguearse!!
mjrofra replied to novo34's topic in Temas resueltos
El uso de winHttp puede resultar un poco complejo ya que no tienes interfaz gráfica para verificar lo que vas haciendo (esto mismo es uno de los puntos que los hace más liviano y rápido) y realmente no sé muy bien qué quieres hacer ni conozco más que lo que inidicas que no te funciona (que no es mucho). En todo caso, quizás esto te pueda servir como punto de partida: Sub loginWinHttp() Dim objWinHttpRequest As Object Set objWinHttpRequest = CreateObject("WinHttp.WinHttpRequest.5.1") objWinHttpRequest.Open "POST", "http://200.25.197.138:7778/axis/login/gep_login.jsp" objWinHttpRequest.send "user=tal&password=pascual" ' tienes que buscar la cadena que se envia cuando se hace la solicitud, debe ser algo así Debug.Print objWinHttpRequest.responsetext End Sub[/CODE] -
Abrir IE en una pagina específica desde excel y loguearse!!
mjrofra replied to novo34's topic in Temas resueltos
Hola, sería útil saber qué quieres decir cuando dices que no te funciona. ¿te sigue arrojando el mismo error? Ten en cuenta que el error era porque no existía elemento con ese Id como te indiqué. Quizás esto te ponga en camino (aunque no es más que lo que ya te dije): Sub Loguearse() Dim appIE As Object ' InternetExplorer Dim doc As Object 'HTMLDocument Dim URL As String Dim objIMG As Object ' HTMLImg Dim objAnchor As Object ' HTMLAnchorElement Set appIE = CreateObject("InternetExplorer.Application") URL = "http://200.25.197.138:7778/axis/login/gep_login.jsp" With appIE .Visible = True .navigate2 URL Do While .ReadyState <> 4 Or .Busy DoEvents Loop With .document .getElementsByName("user")(0).Value = "Usuario" 'Aquí se para la macro .getElementsByName("password")(0).Value = "Password" .parentWindow.execScript "ok()", "JavaScript" End With End With Set appIE = Nothing End Sub[/CODE] -
Abrir IE en una pagina específica desde excel y loguearse!!
mjrofra replied to novo34's topic in Temas resueltos
Hola novo34, me parece que la página a la que quieres acceder es un frame para esta otra: http://200.25.197.138:7778/axis/login/gep_login.jsp Por lo que quizás quieras probar mejor con esa directamente. Ya en esta última página, no veo ningún elemento con Id "user" ni "password", por lo que no vale de nada usar .getElementById. Existen los elementos de dicho nombre, por lo que quizás en su lugar quieras usar .getElementsByName. Ten en cuenta que a diferencia del Id, pueden existir varios elementos con el mismo nombre, por lo que dicho método te devolverá un array, de allí debes extraer el primer elemento: .getElementsByName("user")(0).value = "pascual". No he hecho pruebas ni he probado tu código, sólo he observado el DOM de la página que mencionas. Como sea, no soy muy partidario de interactuar de esta forma con una página Web, quizás mejor quieras enviar las solicitud POST directamente al servidor y quizás sea más conveniente usar algo más liviano y no dependiente de IE (a mi, personalmente, me gusta winHTTP). -
Como abrir Hipervinculos de Hipervinculos web
mjrofra replied to Alerxs's topic in Macros y programación VBA
Hola, acá te dejo un borrador, no sé si algo así sea lo que buscas. Libro1.zip -
Solución al "sincronizar" Tablas Dinamicas "condicionadas"
mjrofra replied to JaimeDavid27's topic in Temas resueltos
re: Solución al "sincronizar" Tablas Dinamicas "condicionadas" Hola, applicationi.caller es el nombre de quien llama a la macro. En este caso la macro la ejecutan los combobox (o cuadro combinado), por lo tanto application.caller devuelve el nombre del combobox que se ha cambiado y ejecutó la macro. Yo les he puesto lstYear, lstMonth y lstDay a cada combobox. Puedes ponerle el nombre que quieras y lo usas en tu select case. Si añades más filtros (combobox) sólo dales un nombre representativo y está. Es más, podrías simplificar aún más si homogenizas nombre. Por ejemplo, llamas al cuadro de combinado Año, al filtro Año y al rango con el valor Año, con esto, la macro se reduciría a: pivotcontrol filtro:=application.caller, Valor:=range(application.caller), tabla1, tabla2, etc. o algo así, estoy escribiendo de memoria. -
Como abrir Hipervinculos de Hipervinculos web
mjrofra replied to Alerxs's topic in Macros y programación VBA
Hola, podrías indicarnos de qué página web es la tabla con los vínculos o subir un archivo de ejemplo de lo que tienes y de lo que quieres lograr. -
Solución al "sincronizar" Tablas Dinamicas "condicionadas"
mjrofra replied to JaimeDavid27's topic in Temas resueltos
re: Solución al "sincronizar" Tablas Dinamicas "condicionadas" ... y acá dejo un archivo con una opción un poco más elaborada (puede parecer más compleja, pero resulta más fácil de mantener o modificar). Copia de Control TMP Mod.zip -
Solución al "sincronizar" Tablas Dinamicas "condicionadas"
mjrofra replied to JaimeDavid27's topic in Temas resueltos
re: Solución al "sincronizar" Tablas Dinamicas "condicionadas" Hola, he vuelto a releer lo que dices y aún no estoy seguro de entender. En todo caso, sí lo que quieres es que sólo se actualicen ciertas tablas en tu hoja (que me parece que por ahí es) quizás puedas crear un colección que albergue las tablas dinámicas y luego las recorres actualizándolas, algo así: Sub PivotControl(Filtro, Valor As String) Dim pt As PivotTable Dim pts As Collection Set pts = New Collection With ActiveSheet pts.Add .PivotTables("HomePivot_Año") pts.Add .PivotTables("HomePivot_Mes") pts.Add .PivotTables("HomePivot_Dia") End With On Error Resume Next Application.ScreenUpdating = False For Each pt In pts pt.PivotFields(Filtro).CurrentPage = Valor Next pt Application.ScreenUpdating = True End Sub Sub HomeFiltro_Anio() PivotControl "AÑO", Range("Home_PivotAño") End Sub Sub HomeFiltro_Mes() PivotControl "MES", Range("Home_PivotMes") End Sub Sub HomeFiltro_Dia() PivotControl "DIA", Range("Home_PivotDia") End Sub[/CODE] Bueno, por si aún vale de algo la respuesta . -
Solución al "sincronizar" Tablas Dinamicas "condicionadas"
mjrofra replied to JaimeDavid27's topic in Temas resueltos
re: Solución al "sincronizar" Tablas Dinamicas "condicionadas" Te respondo rápido para no dejar el tema. No entiendo muy bien, pero quizás puedas revisar la propiedad pivotcache para determinar la fuente de cada tabla. Es lo que se me ocurre con lo que dices. Por ahora ya no cuento con mucho más tiempo para hacer pruebas, en unos tres o cuatro días vuelvo... seguro para entonces ya lo has solucionado tú solo o con la ayuda de alguien más . Habrán muchas formas de hacerlo. Lamento no contar con el tiempo. En unos tres días vuelvo a ver qué ha pasado. -
Solución al "sincronizar" Tablas Dinamicas "condicionadas"
mjrofra replied to JaimeDavid27's topic in Temas resueltos
re: Solución al "sincronizar" Tablas Dinamicas "condicionadas" Así es. Como decía ST (uno de los grandes maestros de este foro), es matar moscas a cañonazos. No es la solución más elegante, pero soluciona el problema . Lo importante: tener cuidado, porque cualquier error al que de pronto le quieras prestar atención, será ignorado y ni te darás cuenta de que se presentó. -
Solución al "sincronizar" Tablas Dinamicas "condicionadas"
mjrofra replied to JaimeDavid27's topic in Temas resueltos
re: Solución al "sincronizar" Tablas Dinamicas "condicionadas" Hola JaimeDavid, la verdad, no había descargado tu archivo. No sé si te entiendo bien, pero quizás con esto baste o al menos te ponga en camino: Sub PivotControl(Pivot, Filtro, Valor As String) Dim pt As PivotTable On Error Resume Next Application.ScreenUpdating = False For Each pt In ActiveSheet.PivotTables pt.PivotFields(Filtro).CurrentPage = Valor Next pt Application.ScreenUpdating = True End Sub Sub HomeFiltro_Anio() PivotControl "HomePivot_Año", "AÑO", Range("Home_PivotAño") End Sub Sub HomeFiltro_Mes() PivotControl "HomePivot_Mes", "MES", Range("Home_PivotMes") End Sub Sub HomeFiltro_Dia() PivotControl "HomePivot_Dia", "DIA", Range("Home_PivotDia") End Sub -
Solución al "sincronizar" Tablas Dinamicas "condicionadas"
mjrofra replied to JaimeDavid27's topic in Temas resueltos
re: Solución al "sincronizar" Tablas Dinamicas "condicionadas" Hola, quizás esto te ayude: Vinculas los filtros de todas las tablas dinámicas de un libro de Excel -
Compartir un libro excel via FTP que pueda ser modificado.
mjrofra replied to djpaul's topic in Excel General
... o Excel Web App de Microsoft, en Skydrive. Igual, si vas a usar macros, como en Google Docs, deberás recurrir a JavaScript en lugar de VBA. -
Hola, lo más fácil puede ser publicar tu archivo de Google Docs como página Web y luego crear una conexión de datos en Excel a esa página web: Importar datos de Google Docs a Microsoft Excel
-
Hola, he pasado rápido y he visto el tema y me gustaría aportar algo, aunque no tengo mucho tiempo. Dejo un pequeña reelaboración de lo que ya está hecho. La api de staticmap de google devuelve una imagen (por defecto jpg) por lo que la puedes cargar directamente en un contenedor en tu hoja. Por favor, revisa la documentación de la API: https://developers.google.com/maps/documentation/staticmaps/#Paths Te dejo un adjunto, quizás te dé alguna idea más. Con la API de google maps (no staticmaps) seguro puedes hacer lo que quieres, debes registrarte para usar su API (es gratuito hasta no recuerdo cuántas llamadas a la api), aunque hay que decirlo, tendrás menos trabajo si cargas tus datos en google docs: http://gmaps-samples.googlecode.com/svn/trunk/spreadsheetsmapwizard/makecustommap.htm Con Microsoft, quizás te convenga más usar la API de bing maps: Excel Mashup Creating an Excel Services and Bing Maps Mashup for SharePoint 2010 Using the Excel Services ECMAScript Object Model Excel Blog - Create smashing mashups with Excel Lamentablemente no tengo el tiempo que quisiera para experimentar un poco con tu problema. Mapas Roadmap.xls
-
Apagar pc a una determinada HORA (no especificando segundos)
mjrofra replied to Salvador1's topic in Temas resueltos
Hola, con el comando at puedes programar la ejecución de otro comando en la consola. Si omites el argumento t en el comando shutdown se apaga inmediatamente. Así, puedes programar el apagado inmediato a determinada hora: at 13:27 shutdown -s -f -
Hola, si tu pregunta guarda relación con este tema: Solucionado Como realizar .INI me parece que al final no necesitas un archivo de configuración para almacenar una sóla variable. En Excel puedes crear un nombre invisible que te permite hacer la comprabación de una o más variables sin la complejidad de un archivo de configuración (que como su nombre lo indica, te permite guardar toda la configuración de un programa, pero es más de lo necesario para verificar una, dos o cinco variables). Para crear un nombre oculto en tu Excel puedes usar algo como: thisworkbook.Names.Add name:="VariableTal", _ refersto:="Valor", _ visible:=False para leer el valor puedes usar algo como: [VariableTal] La ventaja, no hay ningún archivo por ahí que la gente pueda borrar y al estar oculto, es muy difícil que la gente sepa que la variable está ahí en algún lado y menos si proteges tu código. Bueno, es sólo una idea tras ver lo que al final necesitabas en el otro tema, quizás puedas tomar algo de ahí.