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 gatolafo,

    Amigos Muchas gracias por este necesario e impresionante sitio y ayuda prestada. Tengo una duda tengo un macros para guardar ciertos datos de manera vertical, pero mi gran duda ahora es se puede hacer algo similar pero de forma horizontal? Sub copia() Dim Datos As Range, Dato As Range, x As Byte Set RECUENTO = Range("R3:U3") With Sheets("Hrs").Cells(Rows.Count, 2).End(xlUp)(2) For Each Dato In RECUENTO .Offset(, x) = Dato: x = x + 1 Next Dato End With End Sub Lo que necesito es copiar un rango fijo (q7:v404) a otra hoja y que estos sean copiados hacia la derecha (despues de la ultima columna vacia) Desde ya mu…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 3.9k visitas
  2. Started by cavijera,

    Buenas tardes, Necesitaría resolver una duda que tengo. En el fichero que adjunto tengo una columna con datos que se repiten y el resto de las columnas no, necesitaría ponerlos en columnas dependiendo del dato que se repita para solo tener una fila por registro. Gracias PRUEBA_TFG_2.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 993 visitas
  3. Started by salsase,

    Estimados, tengo varios libros (Contabilidad) creados con excel, ¿existe la posibilidad de tenerlos todos juntos y que al habrir excel me los muestre todos(Nombre ó Codigo) para yo elegir cual abrir?, me imagino que debería ser una macro, (pero soy novato en esto y no lo sabría hacer, ¿alguien podría ayudarme?, desde ya se agradece.

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.4k visitas
  4. Started by struchis,

    Buenas tardes y feliz año a todos, He creado la siguiente macro auto_open() en excel 2010: Sub auto_open() Application.DisplayFullScreen = True Application.DisplayStatusBar = False ActiveWindow.DisplayHeadings = False ActiveWindow.DisplayGridlines = False Application.DisplayFormulaBar = False ActiveSheet.EnableOutlining = True ActiveSheet.Protect Contents:=True, UserInterfaceOnly:=True End Function La coloco en modulo, tengo dos problemas: 1.-Al abrir el fichero excel sólo se ejecuta la macro en una hoja y no en todas como habría previsto. 2.-Al enviar este fichero a otros usuarios no se les ejecuta la macro auto_open, he observado que tienen una macro…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 2.9k visitas
  5. Started by Bitxobilbo,

    Lo primero saludaros a todxs y desearos un feliz anio (perdon pero no tengo enies en el teclado). Lo segundo presentarme ... soy nuevo en el foro y lo he encontrado cuando estaba buscando una macro para que se me abriera el cuadro de dialogo de "Guardar como" y que me pusiera como nombre del archivo el valor de la celda I11. La cuestion es que encontre esto que parecia funcionar a la perfeccion: ... se abre el cuadro de dialogo, aparece el valor de esa celda como nombre del archivo, me permite elegir la carpeta de destino, peeeero cuando le doy a guardar ... NO GUARDA NADA!!! :upset: Si me pudierais echar una mano, seguro que es una tonteria, pero tampoco es que sea m…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 788 visitas
  6. Estimados expertos, de ante mano muchas gracias por toda su ayuda y colaboración con todas las dudas que he planteado sus respuestas oportunas me han ayudado mucho en mi labor diaria. hoy tengo nueva mente un problema con un formato que estoy diseñando para buscar datos en una matriz de un colegio. el problema que tengo es que no se como hacer para que al seleccionar un curso"x" me salga en una celda el listado de estudiantes que están en ese curso"x", y que a su vez cuando seleccione el nombre del estudiante me salga en cada celda del formato los datos del mismo chico, no se si estoy siendo claro, por ejemplo quiero seleccionar el curso "ingles6a", al seleccionarlo…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.6k visitas
  7. Estimados, expertos espero me puedan ayudar con un pequeño dilema que tengo. Estoy tratando de crear una libro donde tengo 4 hojas diferentes con notas de estudiantes, cada hoja corresponde a un curso con notas de una materia especifica (matemáticas). la cuestión es que necesito crear una macro o programación en vb, para que cuando por medio de una lista desplegable seleccione el curso y la materia (matemáticas), me lleve directamente a la hoja correspondiente de esos datos y así poder manipularlos, cambiar las notas o modificar algún dato, luego me realice los cambios, y me devuelva a la plantilla de búsqueda. espero me puedan ayudar con esto .

    • 0

      Reacciones de usuarios

    • 13 respuestas
    • 1.3k visitas
  8. Hola Tengo un archivo que duplica, imprime, consulta entre otras cosas hecho con macros pero preciso que esas misma funciones la realice otro archivo y por mas que intento modificandolo me arroja error. adjunto el archivo muestra el cual tienen los macros y el archivo egreso que es el que necesito que tenga las misma funciones que el otro Gracias Desktop.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 650 visitas
  9. Started by Lema12,

    Hola a todos. Antes que nada, deseo expresar mi felicitación y agradecimiento a este foro, el cual aporta sus invaluables conocimientos a todos los que queremos seguir aprendiendo un poco más de excel. Gracias. Estoy tratando de hacer una macro que me genere secuencias de eventos a partir de una tabla de datos como la siguiente: [TABLE=width: 225] [TR] [TD]Núm[/TD] [TD]Evento[/TD] [TD=colspan: 3]Produce:[/TD] [/TR] [TR] [TD]1[/TD] [TD]A[/TD] [TD]6[/TD] [TD]8[/TD] [TD]10[/TD] [/TR] [TR] [TD]2[/TD] [TD]B[/TD] [TD]3[/TD] [TD] [/TD] [TD] [/TD] [/TR] [TR] [TD]3[/TD] [TD]C[/TD] [TD]5[/TD] [TD]8[/TD] [TD] [/TD] [/TR] [TR] [TD]4[/TD] [TD]D[/TD] [T…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.2k visitas
  10. Started by Carloslg,

    Buenos días, antes de nada agradecer la ayuda desinteresada de los miembros de este magnífico foro. Me estoy iniciando en esto de las macros y me ha salido un problemilla que paso a contarles: Tengo un libro en excel 2007, dentro del cual tengo diferentes pestañas que corresponden a diferentes productos. La macro en cuestión que estoy usando, tiene como función, imprimir la hoja seleccionada y transformarla de .xls a .PDF guardandome el archivo según un nombre especifico que va variando en funcion del dia, la hora y diferentes datos que coje de una celda en concreto y con una ruta tambien variable en función de una celda, con lo que consigo que todos los usuarios gua…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.7k visitas
  11. Muy buenas¡ soy nueva y novata :S, no se si me podréis echar una mano. Veréis, me acabo de meter con el tema de los macros y estoy empezando. he estado haciendo con excel un mapa a base de trazo libre, para hacer un mapa interactivo, cada país que he dibujado le he asignado una macro con unos datos, pero no se que pasa, que cuando asigno la macro y clikeo en el país, me salen todos los datos descolocados, cuando los quiero colocados en dos celdas determinadas. No sé si me he explicado. Decirme, si sois tan amables, que pasos tengo k daros para indicaros mejor, si tengo que subiros el VBA o a lo mejor alguien sabe lo k tngo k hacer. En cualquier caso muxisimas gra…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 716 visitas
  12. Buenas Noches a Todos: Tengo una matriz de datos, simple, que otras personas diligencian, y se me ocurre que para evitar que cada uno de los registros sea modificado conforme a la conveniencia de cada persona, deseo escribir en una celda (en cada registro o fila del registro), en el formato de Fecha y Hora, (now()), el valor, al momento de escribir el primer dato en la celda del registro, pero que inmediatamente lo tenga y se calcule el valor now(), este valor quede inmodificable, asi puedo saber la fech y hora de creación del mencionado registro. Muchas Gracias !

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 728 visitas
  13. Started by josegomez,

    Hola a todos y feliz año nuevo. con la siguiente cuestión, En al archivo adjunto trato de explicar, ya que el asunto es medio complicado De antemano muchas gracias. formula_dinamica.xls

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 804 visitas
  14. Hola soy nueva en esto y necesito ayuda Tengo una tabla con estos datos en la hoja 1 [TABLE=width: 86] [TR] [TD=class: xl74, width: 31, bgcolor: transparent]1.1[/TD] [TD=class: xl74, width: 31, bgcolor: transparent]1.2[/TD] [TD=class: xl74, width: 27, bgcolor: transparent]1.3[/TD] [TD=class: xl75, width: 27, bgcolor: transparent]1.4[/TD] [/TR] [TR] [TD=class: xl72, bgcolor: white, align: right]7[/TD] [TD=class: xl72, bgcolor: white, align: right]2[/TD] [TD=class: xl72, bgcolor: white, align: right]3[/TD] [TD=class: xl72, bgcolor: white, align: right]1[/TD] [/TR] [TR] [TD=class: xl72, bgcolor: white, align: right]8[/TD] [TD=clas…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.1k visitas
  15. Started by dureta,

    Tengo un archivo de txt que necesito poder levantarlo y que me conserve el formato, pero necesitaria que me permita poder delimitar la longitud ya que por ejemplo al principio tengo una serie de NUMEROS unidos con un TEXTO, y eso por ejemplo lo quiero poner en dos columnas. aca les deje un ejemplo y el txt para que me ayuden. 20052614048PEREZ CARLOS F 001029758 0.00008000000 0 4774.12 4773.16 0.00 0.00 0.00 0.00 0.00 4773.16 4773.16 4773.16000 0.001 0.0011 1 0 0 4773.16 0.00 0.00 0.00 0.00 30 4773.161 0.00 0.00 0.00 4773.16 0.…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.9k visitas
  16. Started by Onotera,

    Modificación hoja recibos con base de datos Buenas tardes, Os adjunto libro donde tengo una base de datos, y quisiera que me creara por cada registro de la base de datos una hoja nueva con su correspondiente recibo. El formato del recibo es el que hay en las hojas siguientes. Se podría una vez realizados los recibos, crear un pdf con todos ellos? aunque esto no es del todo necesario. Gracias pruebas recibos.rar

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.8k visitas
  17. Buenos días a todos. necesitaría ayuda con el codigo de un Userform que he creado para que en la pagina de empleados, me añada los datos de un alta nueva. Todo funciona bien, hasta que llega la parte final que ha de ordenar la lista de empleados por Turno, categoria y grupo. Lo hice en office 2007 en casa y funcionaba perfectamente, en el trabajo tenemos office 2003 y al ejecutarlo me da un error de codigo y no ordena la lista. Estoy aprendiendo a crear macros y mis conocimientos son muy limitados por lo que os pido ayuda. el codigo de ordenación lo vi en el foro y lo adapte al programa. Gracias por vuesta ayuda. Empleados.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 769 visitas
  18. Started by Blasito31,

    Feliz año a tod@s. Tengo un problema en mi trabajo. Debo de organizar cada dia mas de 1000 albaranes metidos en una hoja de excel. La organización es la siguiente: [TABLE=width: 621] [TR] [TD]Empresa[/TD] [TD]Albaran[/TD] [TD]Fecha[/TD] [TD]HORA[/TD] [TD]EMPRESA HORA Y FECHA[/TD] [/TR] [TR] [TD] BLASITO,SA[/TD] [TD] 895632155[/TD] [TD]01/01/03 [/TD] [TD] 09:48[/TD] [TD]BLASITOSA0101030948 [/TD] [/TR] [/TABLE] Cuando tengo todos los albaranes de esa fecha y esa empresa con esa hora metidos,tengo que imprimirlos con un encabezado. El encabezado es la columna es EMPRESA HORA Y FECHA. Cómo lo hago yo ? Hago primero filtros por el nombre de la empresa. E…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 764 visitas
  19. Hola a todos, tengo una macro que elabora una tabla dinámica con algunos datos, el problema que me surgió es que por ejemplo necesitaría copiar un rango de datos que es variable es decir siempre mi tabla dinámica comienza la hoja1 del libro1 en la celda A4 en adelante, eh visto códigos que muestran la ultima fila con datos : Range("A65536").Select Selection.End(xlUp).Select Yo necesito copiar de la antepenúltima celda hacia A4, y pegarla en otro libro2, hoja2, especificándole a que celda ira la información. Trate de hacer algo asi: Range("A65536").Select if Selection.End(xlUp).Select = "Total general" then selection.end(xlup).select - 1 selection.pasteSpec…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.8k visitas
  20. Que tal gente muy buenas de nuevo y feliz año a todo el que pase por aqui jeje... vengo a molestar otra vez, la primera vez me ayudaron en estos temas que apenas me familiarizo con ellos y como dicen al grano con la informacion. Actualmente me surgen muchas dudas espero puedan ayudarme de favor trabajo sobre la version 2010 1.- como hacer que se guarde consecutivamente una factura de igual manera consultarla más delante o asimismo modificar alguna realizada por si es necesario 2.-tambien estoy buscando como hacer una alta, baja y cambio de servicios y clientes para poderlos utilizar ya sea por el id de cliente, nombre o rfc y el id de servicio... 3.-elaborar un menu c…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.6k visitas
  21. Started by eduard,

    Buenas noches, Me estreno en este foro preguntado a cerca que al crear una serie de botones, con su código en VB y que funcionan a la perfección, otros códigos que antes funcionaban bien ahora me producen 2 tipos de errores. No le veo la lógica y escribo por si alguien me dá alguna idea. Los errores són: Se ha producido el error '438' en tiempo de ejecución: El objeto no admite esta propiedad o médodo. Se ha producido el error '1004' en tiempo de ejecución: Error en el método 'Range' de objeto '_Worksheet' Pero repito que estos errores aparecen en macros que antes funcionaban bien, y en cambio las nuevas macros funcionan bien y sin errores. Gracias! He intentado s…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.5k visitas
  22. Salu2 soy nuevo en esto tema:fatigue: pero necesito una ayuda me han encomendado realizar una pequeña validacion en excel que si en un combo box selecciono cualkier de los 12 meses del año a continuacion me coloque en la sgte columna para ponerle la fecha de nacimiento se puede realizar con formulas o con ayuda de macro si me dieran una manita le quedaria agradecido.. :sneakiness:

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 765 visitas
  23. Started by Enock_25,

    Que tal, Hago este tema porque tengo una duda que me gustaría y me ayudarán a resolver. Me gustaría saber si desde un boton de un formulario en Visual Basic 6.0, es posible abrir una macro en VBA creada en Excel 2010. Si es posible, me gustaría saber cuál es el código que necesito. Muchas gracias por su atención.

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 710 visitas
  24. Started by viejo,

    hola que tal no se como poder poner un listbox con barra de dezplamiento horizontal ¿alguna sugerencia? este es mi codigo que no funciona Private Sub Lst_nombres_Click() Call DisplayHScroll End Sub Private Sub DisplayHScroll() Me.Lst_nombres.IntegralHeight = True Dim x As Integer For x = 0 To 10 Me.Lst_nombres.Items.Add ("Item " + x.ToString() + " es un texto muy largo") Next x Me.Lst_nombres.HorizontalScrollbar = True Dim g As System.Drawing.Graphics g = Lst_nombres.CreateGraphics() Dim hzSize As Integer g.MeasureString(lst_nombre.Items(Lst_nombres.Items.Count - 1).ToString(), Lst_nombres.Font).Width Me.Lst_nombres.H…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.5k visitas
  25. Started by viejo,

    hola que tal no se como poder poner un listbox con barra de dezplamiento horizontal ¿alguna sugerencia? este es mi codigo que no funciona Private Sub Lst_nombres_Click() Call DisplayHScroll End Sub Private Sub DisplayHScroll() ' Make no partial items are displayed vertically. Me.Lst_nombres.IntegralHeight = True Dim x As Integer ' Add items that are wide to the ListBox. For x = 0 To 10 Me.Lst_nombres.Items.Add ("Item " + x.ToString() + " is a very large value that requires scroll bars") Next x ' Display a horizontal scroll bar. Me.Lst_nombres.HorizontalScrollbar = True ' Create a Graphics object to use when determining the…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 907 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.