Saltar al contenido

AlexanderS

Moderador
  • Contador de contenido

    1402
  • Unido

  • Última visita

  • Días con premio

    60

Todo se publica por AlexanderS

  1. Version 1.0.0

    71 downloads

    Resulta que hace unos años me tope con el problema de que en mi trabajo habían varios compañeros con un archivo con macros que yo les había pasado, pues resulta que el código del módulo tenia algunos errores o debía cambiar alguna parte del código. Esto era un problema ya que como eran varias personas tenia que ir una por una a modificar el código del modulo para actualizarlo ya que no podía enviar el archivo por correo porque cada uno tenia datos diferentes ingresados en el libro. Pero teníamos algo en común, todos estábamos en la misma red, entonces se me ocurrió el código que explico a continuación: 1. En el archivo original se debe copiar el código en el módulo "Thisworkbook". 2. Debe haber una carpeta de red a la que todos los usuarios tengan acceso (ya sea una red local o por VPN). 3.Crear una carpeta con cualquier nombre donde colocaremos los archivos de actualización. 4. Los archivos de actualización deben ser en formato .txt y el nombre del archivo debe ser el mismo que el del módulo a actualizar. 5. Dentro de los txt se debe colocar el número de versión ejemplo '1.01, con un apostrofe al inicio.(El código solo se actualiza si el número de la versión del txt es mayor que el del modulo del libro) 6. El código actualizara los módulos automáticamente y no afecta la información que este dentro del libro. Si no existe el módulo el código lo creara. El código se ejecuta automáticamente al abrir el archivo y se debe habilitar la opción de Confiar en el acceso al modelo de objetos de proyectos VBA en la configuración de Centros de Confianza -> Configuración de Macros. En el ejemplo adjunto, se debe descomprimir y abrirlo por primera vez se actualizaran los módulos, ya que la carpeta por defecto es la misma que donde se guardo el archivo. Saludos y espero sea de funcionalidad para alguien.
  2. Hola @Gerson Pineda, lo que pasa es que este archivo lo tenia para uso personal con algunas columnas mas y se me olvido corregir el rango cuando las elimine. Subo el archivo con la corrección, gracias por avisar. Saludos.
  3. Version 1.0.1

    213 downloads

    Que tal, les comparto este archivo el cual utilizo para enviar correos de Outlook desde la comodidad de Excel. Esto es de utilidad si como en mi caso necesitas enviar un mismo correo a varias personas pero con diferentes archivos adjuntos. Sin mas espero que el aporte sea de utilidad. Saludos.
  4. Corregido el error que marcaba el número de día del mes anterior o siguiente si era igual al número de día actual, gracias @aaquino por avisar. Saludos.
  5. Hola @Nicomem14, debes asegurarte de tener activo el complemento y agregarlo a las referencias desde la ventana de VBA. Saludos.
  6. Version 2.0.0

    1628 downloads

    La contraseña del proyecto VBA es "riddle" Hola, el día de hoy voy a compartir una alternativa al control dtpicker, que seria básicamente un calendario que se instala como complemento y puede ser utilizado en cualquier formulario VBA. Los pasos serian los siguientes: 1. Descargar el complemento, es preferible que lo guardes en la carpeta por defecto para complementos de excel la cual suele estar aqui: "C:\Users\NOMBRE USUARIO\AppData\Roaming\Microsoft\Complementos", o simplemente lo guardan donde deseen. 2.Instalamos el complemento Guía para instalar complementos 3.Vamos a abrir el archivo excel donde queremos que el calendario aparezca y nos dirigiremos a la Ventana de VBA (Alt + F11), iremos a Herramientas -> Referencias, y activaremos la que dice CalendarioRiddle. 4.El calendario esta listo para ser usado, solo debemos ligarlo a un textbox, para esto crearemos un botón junto al textbox y agregaremos el siguiente código el el evento click() del CommandButton: Private Sub CommandButton1_Click() CalendarioR TextBox1 End Sub Se debe colocar la palabra "CalendarioR" seguido del nombre del textbox que guardara la fecha. El calendario por defecto empieza la semana el día Domingo, podemos cambiar esto agregando un 2 como segunda variable para que empiece por el día Lunes: Private Sub CommandButton1_Click() CalendarioR TextBox1, 2 End Sub También es posible cambiar el color del calendario (por defecto es negro) agregando como tercera variable el color deseado, por ejemplo morado: Private Sub CommandButton1_Click() CalendarioR TextBox1, 2, &H400040 End Sub Quedaría así: Para cambiar de mes dan click sobre el mes actual y seleccionan el mes deseado, para volver al día actual click sobre la leyenda del día de hoy. Pueden salir del calendario con la tecla "ESC" del teclado. Saludos y espero que sea de utilidad.
  7. Me gusto lo de navegar por las carpetas con el web browser. Saludos.
  8. Version 1.0.1

    160 downloads

    Revisando mis viejos aportes me encontré con este, que como indica el titulo es el viejo juego de NES recreado en VBA. Tal vez la mayor utilidad de este aporte (ademas de ofrecer horas de diversión ) es que todo el juego esta realizado con controles de formulario, por lo que es una buena referencia sobre como funcionan los controles de formulario y la forma en que se pueden manipular en tiempo de ejecución. Así que bueno que se diviertan!! Saludos
  9. Hola @Callao2908 y @Haplox, para la versión de Office x64 se debe agregar una pequeña instrucción al los Declare. que seria PtrSafe, esto hace compatible una instrucción de 32bits a 64bits. Básicamente tendrían que reemplazar las declaraciones del modulo "modPastePicture" para que queden de esta forma: Private Declare PtrSafe Function IsClipboardFormatAvailable Lib "user32" (ByVal wFormat As Integer) As LongPtr 'Open the clipboard to read Private Declare PtrSafe Function OpenClipboard Lib "user32" (ByVal hwnd As LongPtr) As LongPtr 'Get a pointer to the bitmap/metafile Private Declare PtrSafe Function GetClipboardData Lib "user32" (ByVal wFormat As Integer) As LongPtr 'Close the clipboard Private Declare PtrSafe Function CloseClipboard Lib "user32" () As LongPtr 'Convert the handle into an OLE IPicture interface. Private Declare PtrSafe Function OleCreatePictureIndirect Lib "olepro32.dll" (PicDesc As uPicDesc, RefIID As GUID, ByVal fPictureOwnsHandle As LongPtr, IPic As IPicture) As LongPtr 'Create our own copy of the metafile, so it doesn't get wiped out by subsequent clipboard updates. Declare PtrSafe Function CopyEnhMetaFile Lib "gdi32" Alias "CopyEnhMetaFileA" (ByVal hemfSrc As LongPtr, ByVal lpszFile As String) As LongPtr 'Create our own copy of the bitmap, so it doesn't get wiped out by subsequent clipboard updates. Declare PtrSafe Function CopyImage Lib "user32" (ByVal handle As LongPtr, ByVal un1 As LongPtr, ByVal n1 As LongPtr, ByVal n2 As LongPtr, ByVal un2 As LongPtr) As LongPtr 'The API format types we're interested in Con esta modificación debería trabajar sin problemas tanto en office x86 como x64. Saludos.
  10. Version 3.0.0

    1059 downloads

    Este es un aporte que había compartido en el foro de ideas y aportes por allá del 2014, se trata de una macro que puede crear un formulario para ingreso y modificación de datos sin necesidad de que el usuario escriba códigos. Lo subo de nuevo aquí ya que por lo que veo en el foro de ideas y aportes el archivo dejo de existir, dejo el link del post original ya que en el se encuentran mas detalladas las instrucciones y un video de como utilizar el aporte. POST ORIGINAL El mismo es un archivo .Bas y debe importar desde la ventana de VBA para después ejecutar la macro "MakeForm" que es la que crea el formulario. IMPORTANTE: Se debe tener habilitada la opción "Confiar en el acceso al modelo de objetos de proyectos VBA", ya que el formulario se crea en tiempo de ejecución.
  11. @yordin revisa si tienes marcadas las mismas referencias que yo, utilizo windows 7 y office2010 también. Comentas, salu2.
  12. Version 1.0.0

    306 downloads

    Se trata, se puede decir la evolución de este aporte Chat en red local desde excel, con la diferencia de que en lugar de utilizar textbox para mostrar los mensajes utilizo únicamente un control WebBrowser, lo que da mayor personalización. En el rar nos encontramos con un archivo excel y uno de access, el access debemos copiarlo a una ruta compartida en una red local, se debe modificar la ruta del mudulo1 del archivo excel(por defecto utiliza la misma donde se ubica el archivo excel). Podemos: *Cambiar el nombre de Usuario a mostrar en el chat. *Cambiar la imagen del Usuario, incluso utilizar gifs para la misma. *Compartir imágenes locales o de direcciones de internet. *Cambiar el color de las letras. *Crear salas privadas o publicas. Espero que les guste y cualquier recomendación es bien recibida. Salu2 Chat Excel.rar
  13. Increíble aporte, se nota que es un trabajo bien hecho. Salu2
  14. Hola no me dejes mjs privados sin son para una consulta pues para eso existen los foros, si lo haces no te contestare.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.