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. Buenas a todos, lo que voy a preguntar aunque para muchos sea fácil creanme que lo he intentado de muchas maneras y googleado y no logro dar con lo que quiero. Tengo que hacer un reporte diario donde necesito insertar la formula de suma (no el valor, sino la formula), donde el inicio del rango siempre es J5 pero el fin del rango varía como pueden ser solo 2 o 3 filas, pueden llegar a ser hasta 40 filas. La ayuda que solicito es para via VBA poner en la siguiente fila en blanco de la columna "J" la formula de suma donde el rango comience en J5 y que mediante código determine cual es la ultima fila con datos de la columna J. Espero de su valiosa ayuda, desde …

    • 0

      Reacciones de usuarios

    • 12 respuestas
    • 1.3k visitas
    • 2 seguidores
  2. Invitado CSI1981
    Started by Invitado CSI1981 ,

    Buenas tardes Encontre en el foro esta macro para un calendario automático Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range): On Error GoTo Sal Unload Calendario If UCase(Sh.Cells(5, Target.Row)) Like "*FECHA*" And _ Target.Row > 1 And _ Target.Cells.Count = 1 And _ IsEmpty(Target.Offset(-1, 0)) = False Then Calendario.Top = ActiveCell.Top + 160 Calendario.Left = ActiveCell.Left + 18 Calendario.Show End If Sal: End Sub Necesito modificarla para que solo se aplica ciertas celdas y filas Por ej en la columna C y fila 4 Y en mi planilla l…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 867 visitas
    • 1 seguidor
  3. Started by Janlui,

    Que sentencia debo de realizar para preguntar si una Celda tiene Comentario. Gracias

    • 0

      Reacciones de usuarios

    • 23 respuestas
    • 4.3k visitas
    • 2 seguidores
  4. Buenos dias expertos, tengo un libro de excel que estoy trabajando formularios la cual tengo dos, la dificultad es que en mi formulario de FormConsultar e puesto dos filtros con dos ComboBox la cual me funciona con solo texto pero tengo tambien numeros en el listado y la cual donde no me muestra cuando filtro con dicho numeros. Por favor si me pueden orientar que debo adjuntar que me muestre los datos. Adjunto el archivo. Reporte diario de trabajo Rev.xlsm

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 720 visitas
    • 1 seguidor
  5. Started by Janlui,

    Buenas tardes a todos. Pretendo implementar un formulario el cual lo dibujé en el archivo adjunto para darme a entender (espero que así sea) cuenta con un BD y 1 catalogo de Status. En el archivo adjunto describo el requerimiento. Gracias anticipadas por su atención. Formulario v01.xlsx

    • 0

      Reacciones de usuarios

    • 27 respuestas
    • 2.3k visitas
    • 2 seguidores
  6. Started by Janlui,

    Hola a todos. Si tengo en la celda C2 la formula =suma(c3:c10) y eso da X resultado... quiero pasar esa formula a una variable ej. varform de tal manera que varform="=suma(c3:c10)" Como puedo obtener esto. Gracias

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 1.2k visitas
    • 2 seguidores
  7. Hola buenas noches! Espero que me puedan apoyar con el siguiente tema: Tengo una base de datos de mas de 2500 registros de los cuales quiero depurar de acuerdo a su RFC Emisor y sumar las cantidades que contenga en sus registros de acuerdo a las demás columnas, es decir que si un registro aparece 500 veces que me sume en general el contenido de su registro, todo esto mediante una macro, anexo un archivo con algo de información, espero puedan apoyarme, de ante mano mil gracias acumulado 2020.xlsx

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 1.2k visitas
    • 3 seguidores
  8. Buenos días Tengo una macro que me abre un Excel y me rellena una serie de datos. Hasta ahí todo correcto. Pero me gustaría darle un poco mas de utilidad y que me abriera el archivo con el nombre que finalmente deseo guardarlo y lo guardara en la carpeta correspondiente Sub MetodoAbrirLibro() Dim rngCopy As Range, rngCopyOT2 As Range, rngOT1 As Range, rngOT2 As Range, cel As Range, cel2 As Range, adres$ Dim wbOr As Workbook, wbDes As Workbook Dim nombre As String, Ruta As String Application.ScreenUpdating = False Set wbOr = ThisWorkbook Set wbDes = Workbooks.Open("C:\Users\jctorres\Desktop\Partes presenciales\C2020-0136_Carga_Horas (1)2.xls") Wit…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 725 visitas
  9. Started by YianTheJOP,

    Buenos días a todos, En la empresa tenemos una "Base de datos" con registros de personal, contratos, etc que se gestiona desde un formulario y funciona muy bien todo menos el botón EliminarBD que ejecuta el siguiente código. Private Sub btn_Eliminar_Click() Dim Ufila, ufilaD, i, j As Long Dim ht As Worksheet Dim hd As Worksheet Set ht = Hoja3 Set hd = Hoja8 If Me.txt_nic = "" Then Exit Sub If MsgBox("Seguro de eliminar TODOS los registros del item seleccionado?", vbQuestion + vbYesNo, "Borrar") = vbNo Then Exit Sub End If Ufila = ht.Range("A" & Rows.Count).E…

    • 0

      Reacciones de usuarios

    • 28 respuestas
    • 2.2k visitas
    • 2 seguidores
  10. Started by JosMa,

    Hola, tengo el siguiente problema. En una hoja Excel tengo varias columnas con datos. Tengo la macro en la que en dos columnas concretas busca los datos repetidos, hasta aquí todo bien. No se continuar con la macro para que una vez que me ha detectado los duplicados en cada una de las columnas, me deje en la columna solo un registro de los duplicados y coincidentes en ambas columnas, borre o corte el resto y me los copie en otra hoja. Saludos Ejemplo.xlsm

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 8.5k visitas
    • 2 seguidores
  11. Hola! amigos del foro quisiera consultar si hay alguna forma en que se pueda validar el usuario que ha abierto en libro, pero no en un evento Workbook_Open, mas bien cuando ya el libro se encuentre abierto esta comprobación se realice en la hoja activa. Lo que busco lograr es si el usuario definido en el código no es el mismo que ha abierto el libro, genere el procedimiento de cerrar el libro activo sin guardar los cambios. Agradezco cualquier ayuda o comentario. Saludos Historial Smart_IntelligenceTools.xlsm

    • 0

      Reacciones de usuarios

    • 11 respuestas
    • 1.4k visitas
    • 1 seguidor
  12. Started by Galactico,

    hola buenas, he estado hace un tiempo aprendiendo y desarrollando macros en vba para realizar scraping en paginas web, en una de las paginas que utilizo apareció esta protección del sitio, el posible bypasear con vba? he leído que se puede hacer con phyton pero no conozco ese lenguaje el mensaje que dice es Cheking your browser before accessing "sitio" dejo pantallazo https://ibb.co/wp4mwzP en caso de no ser posible, quizás ya sea momento de aprender otro tipo de lenguaje agradezco mucho la ayuda

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 911 visitas
    • 2 seguidores
  13. SentenciaSQL.xls Hola , estoy intentando hacer consulta SQL con este archivo pero no consigo que funcione en OFFICE 365, sin embargo en la version office 2016 si funciona.

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.2k visitas
    • 1 seguidor
  14. Buenas, Tengo una hoja en la que en la que en una de las columnas uso un buscarV, que además quiero que se autorrellene usando referencias relativas (el autorrelleno inteligente, vamos). Os pongo un ejemplo que no es real, ya que son decenas de miles de celdas, y tengo en cuenta el tamaño del rango que puede variar, etc….pero para simplificarlo. Si lo hago grabando una macro, obtengo esto: ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1],Hoja1!R2C1:R10C3,3,FALSE)" Selection.AutoFill Destination:=Range("B2:B20") Pero no quiero que se vea que es una macro grabada, por lo cutre que queda. Además porque quiero aprender. Así que uso la expresión Appli…

    • 0

      Reacciones de usuarios

    • 14 respuestas
    • 2.6k visitas
    • 1 seguidor
  15. Hola! amigos del foro quisiera solicitarles el apoyo con lo siguiente: me encuentro tratando de encontrar la forma que pueda exportar datos de excel a access, estoy intentándolo con la siguiente macro: Sub CopiaDatos() Dim fila As Long, uf As Long, conta As Long Dim cn As ADODB.Connection, rs As ADODB.Recordset On Error Resume Next Application.ScreenUpdating = False Application.DisplayAlerts = False Set a = ActiveSheet Set cn = New ADODB.Connection Set rs = New ADODB.Recordset cn.Open "Provider=Microsoft.ACE.OLEDB.12.0; " & "data source=" & ThisWorkbook.Path & "\171 ProgramarExcel.accdb;" rs.Open "Clientes", cn, adOpenKeyset, adLockOptimistic, adCmdTable f…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.3k visitas
    • 1 seguidor
  16. Estimados buenas tardes, Recurro nuevamente a ustedes con un nuevo inconveniente que se me presentó con una macros que estoy trabajando, exactamente en el formulario "frm_CopiarCobros", lo que hace ese formulario es me combina 2 hojas, la hoja "CopiarCobros" y la hoja "Proyectado", combina datos de ambas hojas haciendo coincidencia con el número de Factura, hasta ahi todo funciona bien, el problema es cuando quiero exportar esa información, quiero enviarla a la hoja "Ejecutado" y solamente modificar algunos datos en la hoja "Proyectado", pero me lanza error con el código para enviar a modificar la hoja "Proyectado" todo el código lo copié de otra macros que hice dond…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 954 visitas
    • 1 seguidor
  17. Started by 96andres96,

    Buenas. Quisiera hacer una macro para guardar un rango de celdas en un PDF cuando se cliquee en un botón. La macro en sí, se hacerla. El problema viene en que el rango de celdas seleccionado es grande (no mucho), pero lo suficiente como para que cuando se genere el PDF se guarde en varias hojas. Por tanto, lo que me gustaría que me ayudasen a conseguir es a que la información del rango de celdas se redimensione para que quepa en una única hoja del PDF. ¿Es posible? Gracias.

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 4.2k visitas
    • 3 seguidores
  18. Started by muyayito,

    Buenas exceler's. Me preguntaba si hay alguna forma de ocultar el reborde de la celda activa (no se como se llama) en un libro en concreto, mediante vba, en opciones, etc. Gracias por adelantado

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.9k visitas
    • 2 seguidores
  19. Started by hectorcc_18,

    Hola!! Creé un módulo de clase para obtener el último dato en una fila o columna específica, hasta hace unos días funcionaba a la perfección, la exporté a mi disco duro y en cada nuevo proyecto la incluía dentro de los módulos de clase. Desde el módulo principal defino la respectiva variable que hace uso del módulo de clase con DIM y SET sin tener problemas, el módulo de clase original lo desarrolle desde abril de este año, y como comenté no me había dado ningún problema. El código del módulo de clase se llama clsUltimoDato, y el código es el siguiente: Private Fila As Integer Private Columna As Integer -------------------------------------------------------…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 483 visitas
  20. Started by 96andres96,

    Buenas tardes. Tengo una macro que selecciona un rango de celdas para imprimir. La macro la tengo en Hoja1 y las celdas que quiero imprimir están en Hoja2. Si coloco la macro en Hoja2 para imprimir, la macro corre bien, sin embargo, si coloco la macro en Hoja1 y la ejecuto desde esa página me salta error. Estoy en Hoja1 y quiero imprimir las celdas de Hoja2 con el siguiente código y me salta error: Sub ImprimirTicket() Sheets("Hoja2").Range("O2:R10").Select Sheets("Hoja2").PrintOut Copies:=1, Collate:=True, _ IgnorePrintAreas:=False End Sub Sin embargo, teniendo la macro en Hoja1, si le hago un apaño dirigiéndome a Hoja2 y regresando a Hoj…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.2k visitas
    • 2 seguidores
  21. Started by 96andres96,

    Buenas tardes. Tengo en excel un macro con el que imprimo un ticket y tras imprimir el ticket automáticamente se abre el cajón portamonedas. El cajón portamonedas he logrado abrirlo a través de las propiedades de la impresora que es de la marca AV Pos modelo P-83. No obstante, me gustaría hacer una macro que abra solo el cajón portamonedas sin necesidad de imprimir. El cajón que tengo es el HS-410. ¿Hay alguna forma de hacer esto? Gracias.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2k visitas
    • 1 seguidor
  22. Started by rzamoras,

    Buenos días, Solicito su ayuda para pasar el contenido de 12000 archivos en formato .rtf dentro de una carpeta con historia clínicas, requiero pasar estos datos a una base de Excel para usarlos posteriormente en Access. En una columna debe estar el nombre del archivo ya que esta vinculado a la ID del paciente, y en otra columna el contenido del archivo. Ya busque en el foro, encontré una macro para pasar txt pero no me funciono, se bloquea el archivo de Excel y no responde. Gracias Rene Zamora

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 2k visitas
    • 1 seguidor
  23. Started by Jose BN,

    Hola! amigos(as) del foro hace poco me descargué este archivo de autoría de @JSDJSD El problema que tengo es intento cambiar la imagen del icono que lleva como nombre: AccessRefreshAllLists por otra de preferencia, tratando de cambiar en esta parte: imageMso="Inicioprueba" insertando la imagen en el editor, a pesar que al momento de validar el editor Office RibbonXeditor no salta ningún error, no realiza el cambio de la imagen. <!-- Created with IDBE RibbonCreator 2019 (Version: 1.1003) --> <!-- http://www.ribboncreator2019.com --> <!-- http://www.ribboncreator2019.de --> <customUI…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.8k visitas
    • 2 seguidores
  24. Buenas noches nuevamente a los Foristas. A sugerencia de JSD de los problemas que le planteaba sobre el formulario, abro un nuevo tema. Ofrezco disculpas porque realmente es así como debe ser. El tema es el siguiente: Tengo en este formulario otros problemas que quizás puedan ayudarme: realmente he tratado de ver dónde está el error, pero mis conocimientos no alcanzan y ustedes son los MAESTROS. 1.- En el FrmPersonal trabajo lo que es el listado de Personal con todos los datos y las Nóminas de Salario. En la parte de las nóminas (LstNomina) ya lo configuré de tal manera que con el evento DobleClick pueda traer cualquier trabajador y poder modific…

    • 0

      Reacciones de usuarios

    • 24 respuestas
    • 1.5k visitas
    • 3 seguidores
  25. Started by knuckles,

    Hola a todos. Llevo meses empleando una macro para hacer scrapping la cual tengo que modificar dado que la web ya no admite IE. A través de tutoriales conseguí escribir un código que me permite obtener los datos, llevo varias semanas y tengo dos problemas: Primero, no consigo que la macro copie los datos de página 2 debajo de los datos de la página 1, los de la 3 debajo de las 2,..., sino que siempre copia encima de lo anterior. Segundo, copiar los datos en la hoja de excel actual (solo consigo que copie los datos si creo una nueva hoja) Este es el código inicial que funciona bien, debajo pongo a donde he llegado con Selenium. Emple…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k 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.