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. Hola estimados foreros de Ayuda Excel, agradeceré mucho su colaboración para resolver este planteamiento, ya que dentro de mis conocimientos no creo tener la habilidad de resolverlo. Leí muchos temas posteados en Macros y Programación BVA, intentando adaptar los consejos a mi idea pero no llego a ningún lado. Bueno les comento mi inquietud, en una tabla de excel( Medidor de Fortaleza de las monedas, por cierto bajada de Internet:D). La planilla descarga precios desde Metatrader en tiempo real y por medio de una combinación de formulas calcula la fortaleza de una moneda en relación a su contra parte, por ej :EURUSD y registra el resultado en una celda. Quiera seguir…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 845 visitas
  2. Que tal, Tengo dos libros llamados Sabana y Cef, en Sabana tengo una tabla que posee en la columna A numeros de item; y en Cef tengo un gran numero de hojas con los numero de item las cuales contienen informacion en las celdas "B4" y "C16". Lo que deseo hacer es que la macro relacione el numero de item con las hojas y si el numero es el mismo que pege la informacion de las celdas "B4" y "C16", y en dado caso de que no sea el numero de item que deje el espacio en blanco. No se si me explique bien, pero espero que me puedan apoyar. De antemano gracias por su apoyo. Saludos.

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 845 visitas
  3. Started by pinoji,

    Buenas noches colegas. Espero se encuentren bien todos. Tengo un pequeño problema; A partir del numero de identidad (para otros países creo que es RUP) yo extraigo la fecha de nacimiento, y calculo la edad de cada trabajador, pero me da un "desfase" con fechas que comienzan a partir del 2000. =FECHA(VALOR(EXTRAE([@[C. Identidad]];1;2));VALOR(EXTRAE([@[C. Identidad]];3;2));VALOR(EXTRAE([C. Identidad];5;2))) Fecha para hallar la edad =AÑO($A$2)-AÑO([@[FECHA NAC.]]) Pueden ayudarme a definir o corregir este problema? Y si no fuera mucho pedir, me gustaría hacer esto desde VBA y evitar fórmulas o funciones en la hoja de cálculo. Gracias de ante…

    • 2

      Reacciones de usuarios

    • 4 respuestas
    • 844 visitas
    • 3 seguidores
  4. Started by jreynosa,

    Hola Buen Dia gente , subo el siguiente adjunto para ver si me pueden ayudar. la siguiente macro consiste en un reporte , el cual los datos que escribo en cada celda y le doy al boton "guardar" me los inserte en una tabla en el sql, aqui el detalle que me inserta los datos repetidamente por ejemplo: En excel 1.Cliente, Dimension,Tipo,Mate 2.Juan....,16-53......,F3....,Piedra 3.Pepe....,15-13.....,F2....,Arena Tabla SQL Juan....,16-53......,F3....,Piedra Juan....,16-53......,F3....,Piedra Pepe....,15-13.....,F2....,Arena Pepe....,15-13.....,F2....,Arena quiero que cada dato que escriba en cada celda me lo mande a la tabla y no me los repita como me pasa ahori…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 844 visitas
  5. Hola amigos: Solicitando su valioso apoyo para resolver un problema que me surgio en la impresion de unos archivos, resulta que en una pestana tengo unos contratos los cuales constan de varias hojas, y lo tengo configurado en hoja tamaño oficio por asi requerirlo, pero la ultima hoja necesito que se imprima en tamaña carta, todo esto automaticamente mediante una macro, ?? , y agradezco de antemano si alguien me pudiera apoyar las primeras 4 hojas se imprimen bien, pero la ultima al cambiar la configuracion se descuadra en mi macro utilizo la sig, instruccion: ActiveWindow.SelectedSheets.PrintOut From:=1, To:=4, Copies:=1, Collate:=True With ActiveSheet.PageSetup .P…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 844 visitas
  6. Buen Día Mi nombre es Rodrigo Tiburcio y tengo una macro que lo que hace es que en un archivo tengo varios docuementos de excel. El boton lo que hace es que junta todas las hojas de los diferentes archivos en una nueva, el problema es que cuando la intentamos trabajar en otra computadora no corre la macro ya que esta linkeada a que solo lo trabaje en mi computadora. Private Sub CommandButton1_Click() Dim directorio As String Dim fichero As String Dim ficherodondeimportar As String Dim hoja As Worksheet Dim totalhojas As Integer directorio = "ThisWorkbook.Path & " \ " & NombreLibro" ficherodondeimportar = "import…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 844 visitas
  7. Started by Alex Razo,

    Buenas tardes, tengo el siguiente código, pero no sé qué instrucción necesito agregar para que pegue solo los valores de la celda copiada. Ya que me manda error de compilación, de antemano, gracias por la ayuda Sub FirstVisibleCell() With Worksheets("Seguimiento").AutoFilter.Range ActiveCell.Value2 = Range("C" & .Offset(1, 0).SpecialCells(xlCellTypeVisible)(1).Row).Value2 Selection.CurrentRegion.Select Selection.SpecialCells(xlCellTypeVisible).Select ActiveCell.Copy Destination:=Range("F1").PasteSpecial xlPasteValues End With End Sub

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 844 visitas
    • 1 seguidor
  8. Copiar datos y ordenar en 5 columnas Quisiera pasar de unos datos en columnas: cota - nominal - tipo - max - min - real 10 - 120 - Position - 0,2 - 0 - 120,05 20 - 130 - Distance - 1 - (-1) - 130,4 ... - A otro sitio de la hoja (o otra hoja) - Me debe copiar los datos hacia abajo hasta que existan datos - Se deben pasar los datos de la columna "Real" agrupados de 5 en 5. Por ejemplo, si tenemos 20 filas de datos, se crearan las columnas "real1", "real2", "real3", "real4" y "real5" con 4 datos cada una (20/5). Los primeros 4 datos de la columna "real" se colocan en la nueva columna "real1", los siguientes 4 en "real2", etc. Gracias Ordenar.xls

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 844 visitas
  9. Estimados, os cuento que me he incorporado recientemente al foro por lo que seguramente me lleve algo de tiempo adaptarme a las costumbres del mismo. Hace poco me he topado con algunos problemas específicos que me sugirieron la posibilidad de resolverlos mediante la utilización de macros en excel, es así que decidí adentrarme en la programación a través de Visual Basic. He estado investigando hace ya algún tiempo sobre los detalles del lenguaje y su implementación para resolver situaciones habituales. Se da el caso de que me han ido surgiendo algunas dudas de fondo, es decir, dudas sobre el funcionamiento del programa y no de código. Lo que intento es saber como funcio…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 844 visitas
  10. Started by Sraulsr,

    Hola buen día!! No he podido hacer con un bucle que se cambie la ubicación de referencia relativa para copiar desde otra hoja. El programa que he hecho (adjunto) funciona como quiero pero quisiera hacerlo en dos líneas y con un bucle que haga que la ubicación de las celdas para copiar la información vayan cambiando. Use contadores, uno disminuyendo de uno en uno (R) y el otro de cuatro en cuatro (C) pero no me funcionó. Al mismo tiempo quisiera ir recorriendo hojas diferentes en el libro. 'Corrida 10 años Lote 171, 173', etc. Esta es una fracción del código: ActiveCell.FormulaR1C1 = "='Corrida 10 años Lote 170'!R[-132]C[-140]" ActiveCe…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 844 visitas
  11. Buenas tardes estimados amigos. Antes que nada desearles unas felices fiestas en compañia de sus familias y amigos. Mi duda es la siguiente. Tengo un proyecto en el cual he creado un menu para cada tipo de usuario, donde dicho Usuario ve solo un par de hojas, menos el Administrador que ve la totalidad de las hojas, y para evitar el uso de algunas macros asignadas en botones al proyecto, tales como eliminar, modificar, etc, he restinjido su uso validando si una hoja en particular es visible, donde dicha hoja solo es visible cuando se loguea el Administrador, todo por medidas de seguridad. Usando la siguiente instruccion realice la validacion: If Sh…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 843 visitas
  12. Started by animal,

    Hola a tod@s, estoy intentando crear una macro para insertar una fecha desde un calendario en una determinada celda, pero mi excel 2003 no dispone de control de calendario 11. ¿como lo instalo? Gracias.

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 843 visitas
  13. Hola como están, una pregunta para los capos de Macros Bueno yo estoy trabajando con una tabla con formulas(que es mi objeto) y tengo una macro que busca insertar/eliminar filas y columnas de este objeto dependiendo de ciertos valores Declaro lo siguiente: Sub ActualizarTabla() Dim f&, c&, oldRows&, newRows&, oldColumns&, newColumns& f = Range("H1") c = Range("H2") With ListObjects(1) oldRows = .Range.Rows.Count oldColumns = .Range.Columns.Count newRows = f + 1 newColumns = c + 1 newRows = Application.Max(3, newRows) .Resize .Range.Resize(newRows, newColumns) If newRows < oldRows Then .Range.Offset(newRows).Resize…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 843 visitas
  14. El gran Gerson Pineda me apoyo con la instrucción para eliminar del listbox y hoja en modo multiselect la cual integre a un userform que tengo, donde al eliminar del listbox sin usar el filtro o filtrando me arroja un error en la esta instrucción donde devuelvo a la hoja inventario la cantidad del producto eliminado del listbox: Dim NombreHoja As String NombreHoja = "Inventario" 'Buscamos la última fila 'EN EL SIGUIENTE ME ESTOY REFIRIENDO A LA HOJA SEGUN EL SECTOR fila = 2 Do While ThisWorkbook.Sheets(NombreHoja).Cells(fila, 1) <> "" fila = fila + 1 Loop Final = fila 'CON ESTE CODIGO ESTARE RESTANDO "1" AL FOLIO EN CASO SE REGRESE …

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 843 visitas
  15. Started by Alfonso5597,

    Hola amigos foreros, que tal estan De nuevo por aquí, haber si me pueden ayudar con este código, la idea es darle formato de numero a la colunma en el listado, he probado varias cosas y no doy con la tela, les agradezco su ayuda El código es el siguiente ListBox1.List(ListBox1.ListCount - 1, 5) = .Cells(Lin, 9) Y tengo este también, me devuelve el resultado en la hoja del reves, me explico, tengo en el listbox, la fecha 08/04/2020 y me la devuelve 04/08/2020 cuando la envio a la hoja .Cells(Lin, 4) = ListBox1.Column(3, i) Muchas gracias por su ayuda

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 843 visitas
    • 1 seguidor
  16. Buenos días, Me gustaría saber si existe alguna macro para cuando pegas una gran cantidad de datos y se queda el Excel en "No responde", que se pueda parar el proceso sin cerrar la Excel y perder todos los cambios anteriores a ese "pegado". Gracias

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 843 visitas
  17. Hola amigos como estan? Tengo una situacion el cual me doy por vencido porque no encuentro la forma de solucionar, es por eso me acudo con ustedes. Bueno mi situacion es lo siguiente. Tengo un archivo de excel que se llama Cotizaciones, el cual quiero crear una copia de la hoja y guardar con el nombre de la celda D11 en automatico (pero que me de la opción de poder guardar en la carpeta que yo quiera), y al mismo tiempo quiero guardar en PDF con el mismo nombre de la celda D11. El archivo original tiene encabezado y pie de pagina y quisiera que solo se crea la copia sin perder el diseño. En la hoja original Tambien tengo 3 botones y los códigos programados y en la co…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 843 visitas
  18. Buenos días a los miembros de este prestigioso foro, recurro a uds, para que brinde su apoyo con una macro, el cual me permita borrar los valores que contengan 0.00 en las celdas c y d. A la espera de su ayuda, quedo agradecido por su colaboracón. MACRO PARA ELIMINAR.xlsx

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 843 visitas
    • 1 seguidor
  19. Started by Mohamad Marrawi Marrawi,

    Buenas tardes, Después de activar la pestaña "Programador", veo que el Visual Basic está deshabilitado. He probado a habilitarlo de muchas maneras y no sé qué más hacer. Incluso tengo instalado el Visual Studio. Adjunto unas cuantas imágenes. ¿alguien sabría decirme qué estoy haciendo mal o dónde está el problema? Gracias

    • 0

      Reacciones de usuarios

    • 11 respuestas
    • 842 visitas
    • 3 seguidores
  20. Started by Antoni,

    Hola a todos: Cada día y cada vez con mas asiduidad, archivos de consultantes me dan este error al abrirlos: Al pulsar Abrir muestra lo siguiente: ¿ Le pasa a alguien mas ? ¿ Tiene algo que ver con el SO de 64 bits ? ¿ Hay alguna forma de evitarlo ? Saludos .

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 842 visitas
  21. Started by eoscar88,

    Hola buenas tardes solicito del apoyo de este foro, ya que plantee mi problema en el foro de excel general y me recomendaron que lo hiciera en este foro. Necesito realizar un sistema de distribución. esto requiero hacerlo por medio de formulas o de macros 1) Existe una necesidad "X" 2) La información esta organizada por fechas de vigencia, cantidad y descripción del lote (existen varios lotes con diferentes cantidades) 3) La formula debe calcular que cantidad tomará de cada lote, priorizando los lotes de menor vigencia y deberá ser igual a la necesidad "X" (cuando la existencia no alcance para cubrir la necesidad "X", deberá dar las cantidad y lotes que haya) 4) Anal…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 842 visitas
  22. Started by jeladio,

    Hola amigos: Acudo a ustedes para que puedan ayudarme con lo siguiente: tengo 2 macros 1 que sube fotos a una base de datos MYSQL y otra para bajar las fotos, y funcionan muy bien pero necesito su ayuda para modificarlos de tal manera que: en el macro para subir las fotos en lugar de incluir dentro del macro la ruta y el nombre de la fotografia a subir y tener que hacerlo uno por uno, lo pueda tomar de una hoja denominada FOTOS a partir de la fila A2 desde donde se encuentra el ID y la ruta y el nombre del archivo desde donde pueda ubicar dichas fotos y por medio de un bucle pueda recorrer todas las filas llenas y poder cargar todas las fotografias. Por otro lado el …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 842 visitas
  23. Estimados amigos. La ayuda que necesito de ustedes es la siguiente. Tengo un gráfico dinámico tipo stacked column. Deseo que cuando le de click en alguna de las barras del gráfico me capture en alguna celda el nombre o la informacion del cuadro donde di el click. Ya he logrado capturar el nombre de la persona con este codigo Private Sub Chart_Select(ByVal ElementID As Long, ByVal Arg1 As Long, ByVal Arg2 As Long)Dim Eje As AxisDim NombreEje As String 'ElementID debe ser igual a xlSeries'La primera vez que se da clic en la gráfica se selecciona toda la serie'Esto se comprueba si el valor de Arg2 es -1 If ElementID <> xlSeries Or Arg2 = -1 Then Exit Sub 'Seleccio…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 842 visitas
  24. Started by thierry1983,

    Hola!! Necesito armar un cuadro de lista dependientes, digamos que dos cuadro de lista. En uno quiero que salga las marcar de autos (Ford, Fiat, BMW, Etc) y dependiente de la selección de la marca en el otro aparezcan los modelos de las diferentes marcas. Gracias

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 842 visitas
  25. Started by xluismix,

    Hola saludos a toda la comunidad, tengo un archivo la cual llevo las deudas a pagar de algunas personas mi incoveniente es que las llevo manualmente y solicitaba una macro que me pudiera aliviar dicho problema. Adjunto Archivo DEUDAS A PAGAR.xls

    • 0

      Reacciones de usuarios

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