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 a todos: Pues eso, tengo una función que funciona si la llamo desde una macro, pero no funciona como fórmula en una celda. Parece fácil, ¿No?, pues no, el detalle es que la función obtiene múltiples resultados y no doy con la sintaxis de la fórmula. La solución es fácil, utilizar tantas funciones como resultados, pero se me ha metido en la cabeza utilizar solo una. Quizás no se pueda hacer lo que pretendo. Paz y amor Ejemplo Fórmula.xlsm

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 3.1k visitas
    • 1 seguidor
  2. Started by jhosmar84,

    Hola amigos. Quisiera saber como hacer una macro para registar datos de un libro a otro, tengo el libro1 y libro2, al registar datos en el libro1 que la macro me registre en el libro2, así por cada registro me lo registre de bajo del ultimo registro, gracias, adjunto los libros. Libro2.xls Libro1.xls

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 3.2k visitas
  3. Como dije en mi mensaje de presentación, no me gusta mucho preguntar, no por orgullo, sino para no molestar ni dar trabajo, si pregunto es porque después de buscar durante días y horas cada día, no he encontrado la solución. En este mensaje adjunto el archivo y ademas doy una breve explicación de lo que me gustaría hacer, porque la generación de grupos aleatorios de nombres la hace bien, lo que ocurres es que me salen repetidos, y me gustaría que no se repitieran combinaciones completas. En la señal roja de la parte de abajo de la imagen pudo introducir nombres y apellidos, y en la señal azul asignarle un numero que puede ser una nota de un examen, o un turno de…

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 3.8k visitas
    • 3 seguidores
  4. Started by Benito Bartolomé,

    Hola a todos; -Adjunto macro contiene un "frm" con un "chek" y un botón. Lo que hace la macro es crear una copia de seguridad. En función de lo que tenga activado en el check la hace de una manera u otra. Activo: Guarda la copia de seguridad en un ruta predeterminada. No Activo: Nos pide la ruta para guardar. Pregunta: ¿Se puede depurar mejor el código o está bien así? Saludos y buen día a todos C.Seguridad.xlsm

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 2.6k visitas
  5. Started by benmartz88,

    Hola, Me gustaría saber como evitar la advertencia de permiso para reproducir contenido incrustrado al cargar una Form que contiene un ShockwaveFlash. Gracias.

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 1k visitas
  6. Started by JosMa,

    Buenos Días, necesitaría generar un archivo “txt”, con datos de una hoja de Excel. Esto seria posible con una macro.? ¿Me podríais ayudar? Dejo en un archivo lo que necesitaría. Saludos. Gracias Ejemplo.xlsx

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 4.4k visitas
    • 1 seguidor
  7. Started by Pelusurf,

    Tengo un archivo quisiera generar una macro que me extraiga la información de las transacciones ordenadas en una hoja de excel y no encuentro la manera de solucionar ya que tiene varios emcabezados, Gracias por su ayuda adjunto archivo de ejemplo. 20131009_20131009.txt

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 1.7k visitas
  8. Necesito crear una macro para que me genere un índice de todos ciertos valores de todas hojas de un libro. El archivo excel "FEXCEL" se compone de un numero variable de hojas "HOJA1", "HOJA2", "HOJA3", "HOJA4", .... Estos nombres de hojas corresponden a las personas que crean cada CD Cada hoja contiene una referencia de CD, fecha de creación del CD, numero de archivo dentro del CD, nombre del archivo, características etc. Ejemplo [TABLE=width: 400] [TR] [TD]REF.CD [/TD] [TD]FECHA CREACION [/TD] [TD]NUM_FICHERO [/TD] [TD]NOM_FICH [/TD] [TD]… [/TD] [/TR] [TR] [TD]PACOCD1 [/TD] [TD]01/02/2012 [/TD] [TD]1 [/TD] [TD]ASAD [/TD] [TD]… [/TD] [/TR] [T…

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 1.7k visitas
  9. Started by viejo,

    buen dia tengan, de nuevo por estos lados con la interrogante de como puedo usar toda lo hoja de un libro ya que me da error el formulario cuando tengo demasiados datos (arriba de los 1000). La manera y forma en que esta hecho el formulario me gusta pero no logro encontrar el error de ¿porque no puedo usar toda la hoja?, principalmente cuando le doy buscar un dato, me podrian ayudar a poder utilizar bien este formulario para poder meterle la cantidad de datos que contiene la hoja (xfd por 1048576). espero sus amables aportaciones y de antemano gracias. todalahojaconlistbox.rar

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 3.5k visitas
  10. Started by Gnoma,

    A ver, he leído un montón y lo he intentado de unas pocas formas... pero hay algo que no logro hacer. Quiero hacer una macro que extraiga datos de una web. Hasta ahí todo correcto. Consigo extraer los datos que necesito, excepto 1 de ellos. Me explico... https://www.futwiz.com/en//fifa23/player/emmanuel-dennis/16645 Si os vais a esta página, veréis un jugador de futbol. He sido capaz de extraer los datos del jugador, tal como nombre, equipo, liga, nacionalidad, precio PC, precio PS, Rango de precios, etc y que los escriba en diferentes columnas. Todo esto funciona perfecto, un poco lento, pero funciona. Lo que me falta es que extraiga el tipo de carta q…

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 1.1k visitas
    • 2 seguidores
  11. Hola, A ver si alguien me puede ayudar. ¿Esto que planteo es posible? Estoy intentando almacenar el último nombre de la hoja de un libro en una variable para que cuando cree una hoja nueva se me actualicen las fórmulas de mi hoja principal automáticamente a través de la función SUMA. Para ello: Almaceno el nombre de la última hoja en esta variable: Sub Variable() Dim Variable1 As String Variable1 = ActiveWorkbook.Worksheets(Worksheets.Count).Name ActiveWorkbook.Names.Add Name:="ultimahoja", RefersToR1C1:=Variable1 End Sub Y luego lo intento usar de esta manera: =SUMA('semana del 01-01-20:ultimahoja'!A1) Pero …

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 5.9k visitas
    • 1 seguidor
  12. Buenas Noches Amigos del Foro Una ves mas acudo a los genios de la programacion en VBA mi situacion es la siguiente: ya he buscadotemas relacionados "Si el Libro esta solo lectura que no se jecute la Macro" en el foro pero lo que he encontrado no me ha funcionado o no se como aplicarlo, hay usuarios de este foro que han planteado inquitud similar a la mia tengo dos libros en Red: Libro A = alli se encuentran los formularios y codigos de VBA, este libro estacompartido para que varios usuarios ingresen a el y puedan utilizar el mismo formulario Libro B=este libro sirve como base de datos que tambien esta compartido donde se va guardando la informacion que llega del Li…

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 10k visitas
  13. Invitado Juan Pelfort
    Started by Invitado Juan Pelfort ,

    Hola a todos, estoy haciendo un UserForm (que me funciona) pero no sé ni encuentro por ninguna parte como se insertan los iconos de Gravedad, Exclamación, Información y Questión como en MsgBox me imagino que se puede hacer como "Imagen" pero no encuentro los dibujos. como lo hago ? De antemano muchas gracias

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 5k visitas
    • 1 seguidor
  14. Started by pinoji,

    Hola colegas. Buenos días a todos. Espero se encuentren bien de salud al igual que su familia. Mi consulta de hoy en bien sencilla. Es el mismo Proyecto de Conciliación Bancaria. Yo le tengo creado una creación e incremento de ID en el evento Initialize del Formulario, pero no me cambia a medida que voy ingresando los registros nuevos, o sea, se mantiene con un mismo numero y yo necesito que cada vez que inserte un nuevo registro este sume uno al anterior y me lo muestre en el TxtID. Dim fila As Long fila = Hoja10.Range("A" & Rows.Count).End(xlUp).Row If Hoja10.Cells(7, 1) = Empty Then TxtID = 1 Else TxtID = Hoja10.Cells(fila, 1…

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 7.9k visitas
    • 2 seguidores
  15. Hola que nada que tal buenos días. Soy nueva en el foro, antes que nada quisiera agradecer este espacio, donde uno puede aprender y retro alimentarse de los demás he aprendido mucho en este foro. Les cuento mi problema, realice una macro la cual hace una serie de procedimientos, uso dos libros uno llamado remisión y otro llamado pedidos, en el libro pedidos tengo un botón el cual lo que hace es guardar lo que tiene el libro pedidos en un pdf, la carpeta donde guardo dicho archivo se encuentra en C:\Pedidos, pero al momento que presiono el botón para crear el pdf, me indica que la carpeta no está creada a pesar de haberla creado, lo más extraño de todo es que he probado …

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 2.3k visitas
  16. Hola Amigos del foro me gustaría saber como puedo hacer para que el formulario se ajuste a la resolución del monitor donde lo trabaje, el problema esta que cree mi proyecto en un monitor de 1280 x 1024 y cuando abro el formulario en un monitor mas pequeño no se puede ver todo, es posible hacer una macro para solucionar esto esto??? Encontré algo de usar el evento GetSystemMetrics pero no se como usarlo... Muy agradecido por sus aportes...

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 28.8k visitas
  17. Started by juanca23,

    Buenas tardes, me pueden ayudar con una macreo tengo un archivo txt necesito abrirlo en excel, el archivo txt es el siguiente REPORTE DE COLABORACIONES GERENAL TIENDA 0003 SECTOR|PROVEEDOR|DESCRIPCION|FECHA INIC|FECHA FINA|PERIOD|CONCEPTO|%| 1 0|147.0|CASA VINICOLA LOS FRAYLES S.A.|01/01/2012|12/31/2012|M|DCO|4.0| 1 0|147.0|CASA VINICOLA LOS FRAYLES S.A.|01/01/2012|12/31/2012|M|PUB|4.0| 1 0|165.0|COLDECOM LTDA CIA S.C.A.|01/01/2012|12/31/2012|M|CAB|7.0| 1 0|165.0|COLDECOM LTDA CIA S.C.A.|01/01/2012|12/31/2012|M|DCO|1.0| 1 165.0|COLDECOM LTDA CIA S.C.A.|01/01/2012|12/31/2012|M|PUB|2.0| 1 0|166.0|COLOMA LTDA|02/01/2012|12/31/2012|M|DC…

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 1.8k visitas
  18. Started by Pedro Alonso,

    Hola a tod@s. Tengo libro con 50 hojas. Sub OcultarExceptoActiva() Dim Ws As Worksheet For Each Ws In ThisWorkbook.Worksheets If Ws.Name <> ActiveSheet.Name Then Ws.Visible = xlSheetHidden Next Ws End Sub Hace lo que dice. Pero el problema está en que no obedece a sus vínculos. ¿Se podría solucionar? Agradecido de antemano.

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 1.3k visitas
    • 5 seguidores
  19. Started by LeFuet,

    Buenas, acudo de nuevo en busca de ayuda a la página que me ha salvado ya en varias ocasiones, seguro que una vez más me sacáis del apuro. Os relato lo que me propongo y no tengo ni idea de como realizar: Tengo varias carpetas con libros como el que os adjunto, lo que necesito es una macro que me cree un libro nuevo copiando en el todas las filas a partir de la 15, necesito que copie los datos de las columnas A a la G y que en la columna H del nuevo libro me copie el contenido de la casilla A3. El mayor problema que le veo es que hago modificaciones en esos libros a menudo y lo que no necesito es que cada vez me copie los nuevos datos, sino que solo copie los que se a…

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 1.6k visitas
  20. Started by mrive,

    Hola a tod@s, Tengo un grafico de estanterías y lo tengo funcionando con Macros en una de ellas (concretamente la E) como se puede ver en el fichero que adjunto. Se trata de un fichero que me refleja el stock de forma grafica según las ubicaciones y las cantidades que hay. Cuando en una estantería se superan las 36 unidades (que es el numero de celdas por ubicación, salvo en las superiores que es de 42) cada celda representa 10 unidades y se refleja de color marrón y cuando es una única unidad se refleja en color amarillo. La que esta funcionando es la estantería E y ahora quería hacer lo mismo con las otras restantes, la A, B, C, D y F. Así ya seria suficiente,…

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 2.5k visitas
    • 2 seguidores
  21. Started by Benito Bartolomé,

    Hola a todos; ¿Es posible filtrar un segundo ComboBox según el item que seleccione en el primer ComboBox, tal y como reproduzco de forma manual en este .gif.? Los datos los cargo de forma manual para el ejemplo, lo interesante es que una vez cargados sea el método que sea se filtre según la condición. CONDICION: La condición a cumplir es que si el item del ComboBox1 = 55 entonces me filtre el ComboBox2 con los items cuya columna 3 sean igual a "Activo" y para el resto cogerá los "No Activo" Saludos. MCombosEnlazados.xlsm

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 1.2k visitas
    • 2 seguidores
  22. Buenas noches a todos los expertos en Excel. Hoy solicito de sus valiosos conocimientos y aportes para resolver este tema: Tengo una hoja en Excel que debe ser completada por diferentes Usuarios. Cada fila es un evento y todos los campos (celdas) de ese evento deben completarse antes de iniciar el registro de otro evento (Fila nueva). Si no se completan todos los campos los totales varían y presentan errores. Si queda un campo sin completar debería mostrar un mensaje. Este control NO debe realizarse mediante botones. Incluyo un ejemplo del formato que se utiliza para esta actividad, el cual debería quedar de la siguiente manera, para poder realizar las su…

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 4.8k visitas
  23. Started by rvillarroel,

    Saludos a todos, tengo una base de dato bastante extensa de cuentas por cobrar clientes y me gustaría eliminar los subtotales que tengan saldo en cero para efecto de análisis de dicha data, alguien que me preste el apoyo de una macro que pueda agilizar dicho trabajo; adjunto ejemplo. Saludos; Ejemplo.xls

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 3.8k visitas
  24. Started by Jose BN,

    Buenas tardes, Amig@s del foro quisiera solicitarles apoyo estoy intentando conseguir una macro que se ejecute en una hora determinada para esto estoy utilizado el siguiente evento: Private Sub Workbook_Open() MsgBox "Es importante recordar enviar el correo de los marchamos retirados al Laboratorio!!" & vbNewLine & "Revisar el retiro de las muestras de leche en almacenes", vbExclamation, "JBalladares ---- Aviso automático" Application.OnTime TimeValue("17:21:00"), "Recordar" End sub Hasta ahí cuando el libro se abre, se ejecuta una macro que lanza un MsgBox en la hora establecida, pero quisiera condicionarlo a que si el valor de una celda co…

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 4.8k visitas
    • 1 seguidor
  25. Started by Benito Bartolomé,

    Hola a todos; En un formulario cargo manualmente los datos de en el ListBox. Tengo un botón que me sirve para añadir registros a este ListBox Los registros son fechas. Entonces la pregunta es, ¿si yo añado un nuevo registro hay posibilidad de que se ordenen los items por fecha? Imagino que me la solución que me vais a dar pasará por pasar los datos a la hoja y ordenarlos desde ahí. Esta opción para el caso no me serviría. Buenos días a todos. MOrdenarList.xlsm

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 2.2k visitas
    • 1 seguidor

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.