verzulsan
Miembro-
Contador de contenido
890 -
Unido
-
Última visita
-
Días con premio
6
Todo se publica por verzulsan
-
Ahhh ahora si Gerson jeje, soy tan cazurro que solo he metido texto. Gracias por la explicacion. Un saludo!
-
Hola Gerson, No he entendido demasiado bien el proposito de la funcion. He descargado el archivo pero no hace nada en la zona verde al escribir o modificar. Un saludo
-
Hoja de Firmas del Estado de los Anteproyectos
tema contestó a verzulsan en pegones1 Ideas y aportes
Hola Pedro, Nunca habia visto nada tan raro en excel con las formulas, la verdad que me ha molado, ahora resulta que sí se pueden hacer formulas circulares y encima esta guarda un ahora() de forma estatica. Mola mucho. Aun no la entiendo pero la estudiaré. Siempre sorprendiendo Un saludo amigo -
Jugar con los valores (Rojo, Verde, Azul) en las celdas
un tema añadido verzulsan en Ideas y aportes
Hola, Os dejo aqui un archivo auxiliar que hice por necesidad de crear una animacion de casilla en un programa de ajedrez que ando haciendo en C++, como ya esta terminada esa fase de animacion, lo iba a guardar en el baul y me acordé de vosotros, quizas os guste para tener mas flexibilidad a la hora de pintar del color que mas os interese el color de fondo de las celdas. Aqui la formula, donde Pix.R, Pix.G y Pix.B han de ser sustituidos por el valor ROJO, VERDE, AZUL que os interese en un rango entre 0 y 255, habrá otros metodos pero este es el mio: Dim P8 As Double: P8 = 2 ^ 8 'potencias de colores Dim P16 As Double: P16 = 2 ^ 16 'potencias de colores Pix.R + (((Pix.G + 1) * P8) - P8) + (((Pix.B + 1) * P16) - P16)[/CODE] Para pintar la celda del color deseado, solo hay que usar la propiedad de celda: Range(A1).Interior.Color = FORMULA DE ARRIBA Os dejo tambien el archivo de pruebas, a ver si os da ideas para alguno de vuestros proyectos. Un saludo! Eligiendo colores2.zip -
Uisshhhhhhhh, casi xD, cuando puse Multi Extract Data estaba pensando en "Microsoft Extract Data" (en español), pero me pareció muy cutre y lo cambié por Multi Un saludo!
-
Hola Rafael y Antoni, Estoy con master Antoni, muy ingenioso. Aqui te dejo una version simplificada de la macro quitando toda la parafernalia del grabador de macros: Sub macro8() ActiveCell = Cells(1, 1).Formula mcadena = Range("a1") ActiveCell.Characters(Start:=Len(mcadena), Length:=1).Font.Superscript = True End Sub[/CODE] Un saludo!
-
Muy buen trabajo Pedro como siempre. ¡Te estas volviendo muy friki eh! me va a costar pillarte Lo de los cambios es algo que si son para bien se aceptan facil pero este tipo de cambios la verdad que mosquea si no le ves el sentido. Haced como yo y buscar reglas nemotecnicas como por ejemplo, MED=Extraer?, pues podria ser.... hmm .... "Mega Extraer Datos" xD, o Multi Extract Data. Un saludo en orden de aparicion (Pedro, Gerson y Never)
-
Muy bueno Gerson. Bastante útil para algunos casos, como por ejemplo una presentacion en la que sobran esos elementos y se necesita una mayor vision global. Un saludo amigo.
-
Mapa Mundial con relojes marcando las horas en Excel
tema contestó a verzulsan en pegones1 Ideas y aportes
Hola Pedro, varias cosillas. He estado analizando el archivo y lo que te comenté del scroleo de la pantalla me ocurre debido al evento Application.ScreenUpdate, lo he quitado de en medio y me va perfecto sin scrolear, supongo que se deberá al equipo que uses, version, Sistema operativo etc, unos lo notaran, otros no, pero a mi con eso ya se me quita. Otra cosilla. El tema de la memoria ocurre en la funcion ValorReloj. He marcado en rojo las lineas que te estan creando el problema (quizas se me haya escapado alguna) y en verde la importancia de consumo. Cada vez que la celda A1 de la hoja "relojes" se actualiza con Now, Excel pide 250Kb mas de memoria a razon de 1 megabyte cada 4 actualizaciones. No se exactamente que tienes asociado a esa celda pero solo ocurre con esa. Revisa el codigo a partir de estas lineas a ver si consigues averiguar algo. Sub ValorReloj(Optional GMT As String, Optional valGMT As Single, Optional fila As Long = 0) Dim valTiempo As Date Dim strGMT As String If ActiveSheet.Name <> "Mundo" And _ ActiveSheet.Name <> "Relojes" Then Exit Sub valTiempo = ConvertLocalToGMT(Now, True) With Sheets("Relojes") .Range("A1") = Now [COLOR="Green"]'Esta linea consume unos 250kb/s[/COLOR] [COLOR="Red"]'.Range("C1") = valTiempo[/COLOR] End With With Sheets("Mundo") If GMT = "" Then valGMT = .Range("C55").Value strGMT = ValorGMT(valGMT) Else strGMT = GMT End If valTiempo = valTiempo + valGMT / 24 [COLOR="Green"]'Esta linea consume 4kb/s[/COLOR] [COLOR="Red"]'.RelojDigital.Value = strGMT & " " & TimeValue(valTiempo) & " " & DateValue(valTiempo)[/COLOR] If fila = 0 Then fila = .Range("C56").Value If fila = 0 Then fila = valGMT + 14 [COLOR="Green"]'Esta linea consume 40-50kb/s[/COLOR] [COLOR="Red"]'CopiaReloj "Reloj0", fila, strGMT[/COLOR] Else fila = fila + 2 [COLOR="Green"]'Esta linea consume 40-50kb/s[/COLOR] [COLOR="Red"]'CopiaReloj "Reloj0", fila[/COLOR] End If Else [COLOR="Green"]'Esta linea consume 40-50kb/s[/COLOR] [COLOR="Red"]'CopiaReloj "Reloj0", fila[/COLOR] End If End With End Sub[/CODE] Sustituye la funcion por esa, veras como ya deja de consumir, asi vas haciendo pruebas con cada linea por separado. Un saludo amigo -
Mola mucho Mauricio, no sabia que se podia controlar la cancelacion de una forma tan simple. Gracias por el tip. A ver si consigo que capture errores infinitos por que a la segunda suelta error de verdad. Un saludo amigo
-
Jeje, me alegra que te gustara josemaria. Se puede cancelar facil con (control+break) o (windows+d), pensaba hacer la broma mas pesada cancelando las teclas de control, break y windows pero aun no tengo muy controlado el tema de hook del teclado y no me merecia la pena si queria acabarlo antes de que acabara el dia de los inocentes. jeje Un saludo!
-
Buenas, Aqui os dejo una pequeña tonteria para alegrar la mañana de este día Saludos! PD: Dedicado a los Macronianos RatonBorracho_vzs.zip
-
Mapa Mundial con relojes marcando las horas en Excel
tema contestó a verzulsan en pegones1 Ideas y aportes
Hola Pedro, ayer no te contesté por que lo miré por encima. Creo que has realizado un trabajo excelente. Lo volveré a mirar cuando termine una implementacion en un proyecto que ando metido, por eso no lo pude mirar en profundidad por que el codigo que has usado es muy extenso. Cuando lo vuelva a mirar en mayor profundidad te comentare lo que vaya notando, Te comento por encima lo que noté ayer: En excel 2000 y 2003 casca, solo va en versiones iguales o superiores a 2007, (Quizas deberias ponerle un detector de version para que solo intentara arrancar en caso de versiones aceptadas, creo que tengo el codigo por algun lado). Desde mi punto de vista, creo que esta sobresaturado de eventos, mi ordenador es relativamente nuevo y en el tiran bien la mayoria de los juegos modernos, aun asi, tu hoja tiene demasiado parpadeo, lag entre procesos, como si le costara tirar del carro. Si es solo de pruebas esta bien que sea asi, pero quizas no le vendrian mal un par de restricciones segun un panel de control que solo activara lo que necesitas asi liberas la hoja de procesos innecesarios. Ya te digo que todo lo de arriba esta basado en unos minutos que estuve mirandolo y no pude comprender bien la utilidad, por lo que prefiero esperar a mirarlo detenidamente para darte una respuesta mas constructiva por que tiene realmente muy buena pinta. Un saludo amigo -
Re: Ejercicios con el raton para novatos del excel (Nivel basico de ingles requerido) Thanks por la traduccion Luis. Ya he cambiado el titulo del post e indicado en un PD que existe la version en español. Solo falta que algun moderador cambie el titulo real general del post por que ese no me deja cambiarlo a mi. Buen trabajo tio, un saludo!
-
Las modificaciones las hice con excel 2003 y ahi si va perfectamente, lo acabo de probar con 2007 y efectivamente no cambia de colores. En modo depuracion parece que entra en la funcion GetAsyncKeyState una vez y luego ya no vuelve a entrar, no se por que, lo miraré a ver si puedo arreglarlo aun que no soy muy de 2007 jeje. Te molaron las mama noel eh? . Que va, no lo he hecho a mano, no estoy tan loco. Hace un tiempo me hice un excel para importar valores RGB desde una imagen, estos valores son asignados a cada celda con el formato "(R,G,", luego proceso la tabla de valores con la funcion que aparece en el excel modificado de antoni que he adjuntado "PintarImagen" en el modulo3, y me pinta toda la imagen sola. Bueno miraré eso un ratejo que luego me tengo que poner con un ajedrez que estoy haciendo en c++ EDIT: Ya he averiguado algo. La funcion se comporta de manera diferente en 2007, si haces click no surte efecto, pero si mueves el raton es entonces cuando se activa... EDIT2: Solucionado, al haber sido guardado con excel 2003, el 2007 lo abría en modo compatibilidad y tenia un comportamiento extraño. La solucion ha sido guardar el libro con formato de macros para 2007 y ya funciona, no ha sido necesario realizar ningun cambio. En el adjunto esta el libro, si lo abris con 2003 usad el otro, y si lo abris con 2007 usad este, tambien podeis abrir el de 2003 desde el 2007 y hacer vosotros mismo la transformacion a compatibilidad de macros 2007, luego cerrais, lo reabris y listo. Un saludo! PD: Menuda tonteria que no se puedan subir mas de 100kb pero si uno de mas de 100 partido en cachos... tendreis que unirlo por que ocupa mas en xlsm que en xls... PintarCuadros_antoni_vzs.part1.rar PintarCuadros_antoni_vzs.part2.rar
-
Me acabo de descargar el que he subido y me cambia de color perfectamente. Le das a ON y luego pinchas en el color que quieres, vamos esa parte no la he tocado salvo para que cada boton toque unicamente su zona. Pruebalo de nuevo con la macro funcionando. Me alegro que te gustara ^^
-
Buenas Antoni, Aqui te dejo un regalito . He modificado tu archivo y he mejorado un poco el tema del click para pintar, ahora ya se puede pintar con click pulsado y deja de pintar al soltar el boton, todo lo demas lo he dejado como estaba. La verdad es que me ha costado un pelin entender lo que hacias al pulsar el boton derecho. Bueno, ahora ya se parece un pelin mas al Paint Brush y quizas los eventos de click que he añadido te den mas juego para soltar tu imaginacion con otras cosas que se que te gusta explorar nuevos horizontes Un saludo amigo, y ¡FELIZ NAVIDAD A TODOS! PintarCuadros_antoni_vzs.zip
-
Hola, Esto es una hoja con la que me he encontrado por accidente en una de mis busquedas de hojas por google. Vista por encima, hasta mi madre podria aprender a usar lo basico del excel, esta diseñada por etapas para los mas novatos. El archivo Saludos! EDIT: En el post4, (3 respuestas mas abajo), Luis ofrece una traduccion del archivo en expañol con alguna correccion hecha por el y por Antoni.
-
Buena y saludos Antoni, esta muy bien el trabajo. A ver si lo mejoras y tal vez deje de usar Paint . Un saludo para ti tambien Pedro
-
La verdad es que ese evento para entretenerte un rato jeje, recuerdo bien ese aporte de Never, dias antes estaba comiendome el tarro para interactuar con la hoja con el evento OnMouseOver sobre un combobox invisible y luego tras el aporte de Never, mandé a la basura el primero e hice el laberinto aquel que puse por el foro. Adjunto los dos archivos de nuevo, el primero es evento sobre cuadro de texto, el segundo un juego del laberinto donde tienes que moverte por el con el raton sin poder transpasar las paredes MouseMove Raton sobre celdas.zip
-
Hola Never!, Gracias por la explicacion, vista la funcion en el link que has pasado, lo que hace es sacar con el GetAbsolutePathName la ubicacion absoluta en donde esta localizado el archivo, por eso la variable que comentaba no tiene demasiado sentido, es anulada por GetAbsolutePathName. Un saludo amigo
-
Hola{ Como curiosidad esta bien, no lo he probado ni 1 minuto pero ponga lo que ponga en drvpath = "C" me da exactamente el mismo resultado, drvpath = "Hola que tal ", Pongas lo que pongas, te devuelve la informacion de la unidad en la que esta guardado el archivo, gracias a lo cual me he dado cuenta que al abrir un archivo nuevo excel, mientras se llama Libro1 sin ser guardado (donde he pegado la macro), me ha devuelto la informacion de D en lugar de C, por lo que ahora ya se que cuando creo un archivo, se crea primero en temporal D (en mi PC en concreto). }Saludos!
-
Validación de datos sin usar "Validación de datos"
tema contestó a verzulsan en Antoni Ideas y aportes
Jajaja que cachondo Antoni, ya sabia que te lo tomarias por ese sentido. Tal como lo explicas entonces si que te dare la razon y me parece logico que lo uses asi. De todas maneras yo seguire con mi metodo, por que el GOTO, el ON ERROR machacando ON ERROR anterior, etc, ya lo he utilizado y mucho, y siempre he terminado perdiendo de una u otra forma el control de la hoja. Todo se hacia mas complicado hasta que empece a aislar los errores y tratarlos con condicionales Verdadero y Falso, pero eso soy solo yo, no he visto a muchos que lo hagan asi. Si a ti te va bien con ese metodo me parece perfecto que lo sigas usando. Ya subire algun ejemplo de los mios algun dia que tenga tiempo para hacer algo que no sean estudios, que es que nos estan machacando en el modulo... Me voy a pegar un tiro xD Un saludo! -
Validación de datos sin usar "Validación de datos"
tema contestó a verzulsan en Antoni Ideas y aportes
#include <FrikiPosting.h> void main(hola) { Antoni, felicitaciones por tu creatividad en periodo de aburrimiento. Me han llamado la atención 3 cosas, 2 cosas por las que felicitarte, la otra es algo vengo notando que te he visto hacer varias veces que no me acaba de convencer (no todo va a ser bueno), pero eso sí, sigues siendo mi maestro Felicitaciones por: "If Selection.Cells.Count > 1", super simple y mira que lo he usado veces pero no se me había ocurrido usarlo en una sentencia condicional, ¡MUY BUENA IDEA! "ComboBox1.Top/Left/etc = Target.etc", solo lo había usado con imágenes, no tenía ni idea que el ComboBox se alimentara de este mismo principio pero pensándolo bien, es otro objeto mas así que ahora le veo más sentido a las cosas en VB. Motivado por lo aprendido de tus conocimientos y tras el comentario de Gerson, me ha parecido bien explicar con esta respuesta en plan friki y decidirme por fin a decirte cual es el código que quizás deberías depurar para que tus aportes fueran aun más exquisitos y es el tema de los errores, que es la tercera cosa que te iba a comentar. Una vez leí en un foro guiri, no recuerdo donde, que aquel que usaba "On Error Resume Next" en el programa principal era un novato que no sabía programar, absolutamente absurdo desde mi punto de vista pero que fue algo que me caló, absurdo también porque está claro que aquí hay mucho nivel en la comunidad pero aun así sigue habiendo muchos casos de "On Error Resume Next", y no me refiero solo a este caso Antoni, esto aparece en muchos más foros, cosa a lo que le voy a tener que dar la razón a Gerson, es bastante lioso si no eres el autor del programa ya que pueden surgir errores de mil tipos diferentes y si eres la víctima, no te va a hacer mucha gracia ver eso de "OERN" en el código. Yendo al grano y hablando en general, diré que solucioné este problema muy fácilmente con el uso de funciones auxiliares pasándole parámetros por valor, (en algunos casos parámetros por referencia), y recibiendo como respuesta un argumento bolean, que puede sonar ambiguo y difícil de primeras pero es tan simple como lo siguiente: vas a poner un "On Error Resume Next", la cosa es que sabes el motivo del porque lo vas a poner, es decir, sabes la línea que puede crear ese error, así que en lugar de poner "OERN", creas una función, metes allí la frase, creas dentro de ese procedimiento la sentencia "OERN" y devuelves un bolean. En el programa principal en lugar de obtener ERROR, directamente puedes usar un condicional con ese bolean para actuar según Verdadero o Falso. Un saludo a todos, en especial a Antoni y Gerson que son con los que he tratado en este tema. }//Fin de programa -
Void Hola(){ Jaja antoni, siempre atacando ahi con tus proyectiles Macronucleares. Muy buenos los codigos Saludos!!;}