Saltar al contenido

Macros y programación VBA

Temas sobre la automatización de Excel utilizando macros y VBA. Errores de VBA. ¿No consigues que tus macros hagan lo que necesitas?

  1. Started by Brel,

    Buenas, Con excel 2003 tengo un formulario cuyos eventos 'enter' (obj_GetFocus) y 'exit' (obj_LostFocus) controlo desde un modulo de clase salvo en los controles internos (textbox, commandbutton...) del control Multipage. Hasta llegar a el (indice de tabulación: 15) paso por controles 'textbox', 'optionbutton' y 'cuadros combinados' y en todos consigo poner el valor en el formato que quiero, pintar de otro color al entrar (.BackColor) y salir para saber en cual estoy, guardarlo en una columna de una hoja concreta si el valor cambia... salvo cuando llego al multipage que nada funciona y no hace por ejemplo lo anterior indicado en los distintos controles existentes en cad…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.4k visitas
  2. Muy buenos dias todos..... Me inscribi a este foro por la necesidad que tengo con lo programacion en excel con macros y BV y me parece muy interesante, se que aqui me van ayudar Mi siguiente inconveniente es: tengo un libro excel el cual cuenta con 7 hojas, donde necesito gurdar una hoja especifica en una direccion variable el cual me gustaria yo especificar al momento de guardarla y necesito que esta hoja se guarde con la fecha que presenta mi sistema (mi ordenador), esto por medio de un boton de formulario o un boton de control

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.2k visitas
  3. Started by volandri,

    Estimados:Necesito de su ayuda por un problema que tengo en la siguiente macro que estoy desarrollando.Resulta que todos los fines de semana debo emitir un reporte con varios archivos excel que siguen la misma estructura, y como se ven en la "SHEET1", entonces debo tomar todo lo que aparece en y dependiendo lo que aparece en el campo PO NUMBER (Columna , se que se trata de un nueva empresa del cual debo sacar un reporte EJ:"A3RJ-00-K-ES-308" Es una empresa A en comparacion a "A3RJ-00-K-ES-313" que es una empresa B, etc etcEl punto que tengo en mente hacer, es crear un archivo distinto por cada hoja creada con informacion por separado.Por ej: Sheet2 dejarlo en archivo1.xls…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 656 visitas
  4. Started by A.Maurizio,

    Hola Marco en pocas palabras mi problema es el siguiente: En una hoja de Excel que creé en el juego del bingo. Después de que el uso de una conexión de esquema para cada replicado de la Tabla de símbolos para cada célula de mi Tómbola. Después de eso: he creado una fórmula que simplemente dice, que a su vez sale el número Ejemplo (1) es el color del rojo del símbolo Número 1 de la Tabla etc ..! Ahora el problema es el siguiente: A medida que el juego! Funciona bien, pero si se mira de cerca, se da cuenta de que hay algo que está mal, ya que la carta de si es de color rojo el número (1) o el número (80) y luego extraiga el número (10) o (15) etc ...! Extraer el núm…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 804 visitas
    • 1 seguidor
  5. Started by Cacique,

    Buenas noches amigos, Por favor, alguien podría ayudarme con esta duda. Este código que envía mensajes de información que esta en excel, a través de WhastApp, me funciona correctamente en windows, pero necesito adaptarlo para que funciones en un Excel de un ordenador MAC. Creo entender que el problema lo tengo en la ejecución de la función SHELL que inicializa la aplicación, pero no se que adaptación debo hacer para que sea operativo en MAC. De antemano agradezco su valiosa ayuda. Declare PtrSafe Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As St…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
    • 1 seguidor
  6. Started by milor91,

    Hola como están, necesito por favor me ayuden, el problemas que tengo es que filtro datos de varias hojas pero ahora necesito hacerlo solo con los datos de ciertas columnas. Por ejemplo: Materia Física Dinámica Dinámica Dinámica Física Física quiero que si escogí "Dinámica" muestre todos los que tenga esta materia y copiarlo en otra hoja De ante mano gracias por su ayuda.......

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1k visitas
  7. hola, saludos a todos primeramente. les cuento soy nuevo en esto de Macros pero es un mundo que me gusto y de apoco quiero ir aprendiendo mas. tengo un dilema, tengo un resultado en E3 el cual es dinámico y va cambiando todos los meses, pero necesito que el resultado de cada mes valla quedando guardado en la columna B con sus meses, Ejemplo B3, Enero, B4, Febrero, B4 Marzo, ETC. lo que no he podido hacer funcionar es que cada que vez q necesite agregar el resultado del mes solo al ejecutar la macro valla avanzando el cursor sin borrar el resultado del mes anterior ojala me hayan entendido.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 805 visitas
  8. Started by pixel04,

    necesito su ayuda *******...tengo un pequeño problema con el siguiente codigo: Private Sub CommandButton1_Click() Dim i As Integer Dim final As Integer For i = 1 To 1000 If Hoja2.Cells(i, 1) = "" Then final = i Exit For End If Next Hoja3.Cells(final + 1, 1).Offset(3, 0) = UserForm4.TextBox1 Hoja3.Cells(final + 1, 3).Offset(3, 0) = UserForm4.TextBox2 Hoja3.Cells(final + 1, 4).Offset(3, 0) = UserForm4.TextBox3 Hoja3.Cells(final + 1, 5).Offset(3, 0) = UserForm4.TextBox4 Hoja3.Cells(final + 1, 6).Offset(3, 0) = UserForm4.TextBox5 UserForm4.TextBox1 = "" UserForm4.TextBox2 = "" UserForm4.TextBox3 = "" UserForm4.TextBox4 = "" UserForm4.TextBox5 = "" UserForm…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
  9. Hola, nuevamente vuelvo a pedir vuestra ayuda. Basándome en la hoja con el código que amablemente me hicisteis para el cronometraje de una llegada de una prueba contrarreloj, ahora me gustaría crear una hoja para que esté en el ordenador en la línea de salida y vaya dando la salida ordenadamente a cada corredor. En dicha hoja además de tener una tabla con la hora de salida de cada corredor, me gustaría que en el formulario que aparece al pulsar el panel de control apareciesen, en rojo, todos los corredores que aún no han tomado la salida, en amarillo el próximo corredor en tomar la salida y en verde los que ya han tomado la salida. También estaría bien que en el mismo for…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.5k visitas
  10. Started by fdbchp,

    buenas En este archivo quiero transponer los datos de la hoja 1 para que queden como los de la hoja 2. He incluido una macro en un módulo de la hoja 1. La macro es de otra hoja en la que antes de las letras "eur" aparecia el texto "tx01, tx02...". No consigo adaptarla cuando la primera parte del texto empieza por "eur". ¿Alguien puede ayudarme? Gracias al foro 1 vez más Borja tasas.zip

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 610 visitas
  11. Started by buenaonda,

    Estimados me a pasado cuando hago un botón "Salir" en un formulario que utilizo lo siguiente: ThisWorkbook.SaveThisWorkbook.Close application.Quit el problema es que si tengo alguna planilla abierta cuando cierro esta macro, se me cierra todo lo que se encuentre abierto de excel. Por otro lado, si no coloco al última linea (Application.Quit) me cierra el libro pero no el editor de Vba. Lo que necesito es que solamente cierre el libro que se encuentra activo (el que tiene los datos de la macro) y también el editor de Vba y las demás planillas queden abiertas. De ante mano muchas gracias por su ayuda Saludos

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.4k visitas
  12. Started by Marias123,

    Necesito cargar imágenes png para formar rostros al encimar las imágenes en controles de tipo imagen en un formulario. Alguien me podría ayudar.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 4.1k visitas
  13. Started by Dani2020,

    Como puedo hacer para que esta macro la pueda utilizar en un rango determinado no solo el la fila A1 y B2 si no en varias Filas Private Sub Worksheet_Change(ByVal Target As Range) If Target = Range("A2") Then Range("B2").Value = "" End If End Sub listas desplegables (dependientes).xlsm

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 669 visitas
    • 1 seguidor
  14. Buenos días, Busco hacer una macro que divida los valores de la columna "C" de la pestaña (2) entre el valor constante que le corresponde a esta planta , dato de la pestaña (1) , columna "A". Y devolver los valores resultantes de esta división en la columna "D", pestaña (2). Gracias por adelantado Libro1.xlsx

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.1k visitas
  15. Invitado jorgebenal
    Started by Invitado jorgebenal ,

    Hola amigo yo estoy trabajand con consultav en un archivo de nomina o rol de pagos. en una celda coloco el codigo del empelado y el resto de informacion se rellena automaticamente. Lo q neceto es como hago para que el valor de esta celda se cambie al siguiente numero y antes de q cambie envie la orden de impresion de los valores referente al codigo que esta en la celda. ejemplo Ejecuto macro inicia en 1 envia orden de impresion, pasa al 2 enviaroden de impresion y asi sucesivamente hasta llgar a fin de archivo. Todo tine q imprimirce solo con un click Caso especial si la impresion se suspende por cualquier motivo me gustari colocar el el numero de inicio sea el 100…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 940 visitas
  16. Started by Celest3,

    Hola amigos, quizas me puedan dar una ayuda tengo frm donde hay 2 dtpicker que los uso para las fechas y 2 dtpicker para la hora lo que quiero realizar es que si el dtpicker1 escpjo una fecha, el dtpicker2 toma la hora del sistema (esto realizado) al dar click en check de salida el dtpicker3 toma la fecha actual, y el dtpicker4 la hora del sistema actual (hecho) aqui el problema, el texbox1 debe darme las horas que han pasado ya sea el mismo dia o hallan pasado varios dias, solo quiero la horas. creen que es posible?? yo intente pero no pude para los que no tengan el dtpicker, pueden dar ejemplo usando los textbox. Private Sub CheckBox1_Click()If CheckBox1.Value …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 856 visitas
  17. Muchas gracias por vuestra ayuda a todos lo que nos estamos iniciando en la creación de macros con VB en excel. En esta ocasión necesito si alguien me puede ayudar con la creación de una Macro que copie un rango variable de la hoja1 a la hoja2 Este es el código que intente hacer, pero no me funciona Public Sub seleccionvariable() Dim fila, columna As Integer Sheets("hoja1").Select Range("a15000").Select Selection.End(xlUp).Select fila = ActiveCell.Row Range("ab1").Select Selection.End(xlToLeft).Select columna = ActiveCell.Column ActiveSheet.Range(Cells(1, 1), Cells(fila, columna)).Select End Sub Rangos variable…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 557 visitas
  18. Buenos dias estimados compañeros. Estoy necesitando ayuda para poder hacer una hoja excel en donde el objetivo de esta hoja sea que pueda medir la distancia entre códigos postales... No soy conocedor hasta ese nivel de como hacerlo, pero se que se puede usar una api de google y realizar consultas. La idea es por ejemplo A1= 28001 A2= 45001 A3= 89,7 Km Por ejemplo esto seria lo que necesito. Espero que si alguien ya se encontró con esta necesidad si me puede echar una mano estaría muy agradecido. Gracias.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 6.9k visitas
  19. Started by Benito Bartolomé,

    Buenos días a todos; -En el archivo que subo tiene en la hoja "Arqueo y Ventas" una macro que me muestra al hacer clic con el botón derecho del mouse un menú personalizado. He configurado de forma que si la persona que utilice la macro no tiene privilegios de administrador no pueda acceder a dicho menú. Si lo intenta aparece un formulario donde se debe introducir la contraseña correcta que estableció el administrador. Consulta: Como puedo hacer para que una vez logueado me actualice el menú contextual sin necesidad de que tenga que ir saltando de una hoja a otra. Dejo enlace de un video explicativo: Video Saludos. JExcel.xlsm

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.1k visitas
  20. Started by landom,

    Hola a todos! espero me puedan dar una mano. tengo un archivo (el que adjunto) con varios formularios de datos que quisiera poder cargar al realizar una busqueda.. yo sé como crear los formularios y como guardar los datos eventualmente, lo que no sé es como hacer que esos datos vengan a cargarse al formulario segun un criterio de busqueda. espero me puedan ayudar ya que me falta poco para lograr terminar el archivo pero no se tanto de vba, hice lo que pude... desde ya gracias a todos.... 1.zip

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
  21. Started by ducados,

    recuro a vosotros por el siguiente tema. tengo un combobox que al ejucartlo enpieza siempre por la primera casilla (a1), es posible que empieze con (a4) y terminne (a30) este es el codigo que uso Private Sub ComboBox1_Change() Dim i As Integer Dim final As Integer Dim FINAL2 As Integer Dim J As Integer Dim H As Integer For i = 2 To 1000 If Hoja5.Cells(i, 2) = "" Then final = i - 1 Exit For End If Next For i = 2 To final If ComboBox1 = Hoja5.Cells(i, 2) Then T1 = Hoja5.Cells(i, 2) T2 = Hoja5.Cells(i, 1) T7 = Hoja5.Cells(i, 3) Label75 = Hoja5.Cells(i, 3) Label76 = Hoja5.Cells(i, 6) Label82 = Hoja5.Cells(i, 8) Label84 = Hoja5.Cells(i, 9) Exit For En…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 924 visitas
  22. Started by antikorper,

    Buenas tardes tengo la tabla que adjunto abajo con un desplegable por dias. No tengo ni idea de macros. Esta tabla se va rellenar cada dia, y para no tener muchas pestañas ( una por cada dia y semana ) he pensado hacer una pestaña por semana y con el desplegable ir eligiendo dias de esa semana. Lo que necesito es ir guardando datos el lunes, el martes por la mañana selecciono martes del desplegable y las filas que estan sin relleno se queden vacias, y asi sucesivamente, pero tambien necesito poder consultar lo de dias anteriores, no se si me explico con claridad.... A ver si me podeis hechar una mano. Gracias por adelantado¡¡¡ MULTIl.xls

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 999 visitas
  23. Started by xadona,

    Hola a todos, tengo una macro de excel que me genera un informe a Word, el proceso se basa en copiar la celda y pegarla en el word que genera la Macro. Lo que quiero realizar es que cuando la celda no tenga ningún valor o no tenga nada escrito (ya que algunas son funciones logicas donde un resultado sera un "texto" o "" y en otras simplemente no habra nada escrito) solamente quiero que la macro copia y pega dicha celda cuando se tenga texto. Esta es la Macro: ------- Sub Botón44_AlHacerClic() ' Botón44_AlHacerClic Macro ' Macro grabada el 26/06/2012 por nn ' Set WordApp = CreateObject("Word.Application") Set WordDoc = WordApp.Documents.Add Worksheets("Auditoria S…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 4.5k visitas
  24. Started by riverts,

    Mi problema es que no consigo grabar en el textbox2 el ultimo ingreso del spinbutton1 al textbox1 Para poder asi ver cual fue el ultimo valor ingresado y seguir la secuencia sin volver a colocar 2 veces el mismo valor (se grabe el valor asi vuelva a abrir el form) Gracias de Antemano..! Libros1.xls

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.1k visitas
  25. Started by payorayo,

    Buenos dias, tengo un problemilla con una macro que ya tengo hecha y en la que dentro de la cual quiero hacer una llamada a otra siempre y cuando se cumpla una condición. La comparación que quiero hacer está en una celda combinada y es una cadena de caracteres que previamente he seleccionado con un desplegable de "validacion de datos". mas o menos asi: macro1 if = "cadena" then call macro2 else (aquí iria todo el resto de la macro1) end if ya sé que la sintaxis no es así pero es justamente para que me digaís como se haría. Quizás no me he explicado bien... Un saludo y gracias de antemano.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 11.6k visitas

Información básica de protección de datos

  • Responsable: Sergio Andrés Celemín
  • Finalidad: Moderar y responder comentarios de usuarios. Recuerda que la información que facilites es pública, y los datos que incluyas los leerá cualquier visitante de esta web, así como el avatar que poseas.
  • Legitimación: Consentimiento del interesado.
  • Destinatarios : Hetzner Online GmbH.
  • Duración: Mientras se conserve este post o hilo en la comunidad, o decidas eliminar el comentario.
  • Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso, rectificación, supresión, oposición y demás derechos legalmente establecidos a través del email [email protected]

Información adicional: Encontrarás más información en la política de privacidad.