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

    Aumentar valor de ComboBox con for?? Hola, tengo en un formulario 102 entradas, divididas en 17 lineas de 6 columnas. linea 1: ComboBox1, txtDesc1, txtCant1, txtPrecio1, txtDto1, txtTotal1 linea 2: ComboBox2, txtDesc2, txtCant2, txtPrecio2, txtDto2, txtTotal2 linea 3: ComboBox3, txtDesc3, etc...... estoy intentando que a la hora de enviar los datos a la hoja excel, lo haga con un for de esta forma For lineas = 1 To 17 Cells(Rows.Count, 52 + lineas).End(xlUp).Offset(1, 0).Value = Me.ComboBox1.Text Cells(Rows.Count, 52 + lineas).End(xlUp).Offset(1, 1).Value = Me.txtDesc1.Text Cells(Rows.Count, 52 + lineas).End(xlUp).Offset(1, 2).Value = Me.txtCant1.Text Cells(…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 783 visitas
  2. Hola, buenos días a todos; -Soy nuevo en este foro, disculpen si me equivoco en algo. -He subido una macro la cual tiene un formulario con una serie de botones de opción. A mi la que mas me interesa es la que pone "sizable". Si activo esta opción y tiro de un lateral de la ventana pues el formulario anchea o encoge según mueva el ratón. Esta opción me gustaría implementarla al segundo formulario que pone "frm_Ajustable". Este formulario está vacio no tiene ninguna macro para no entorpecer el trabajo. Si tienen alguna duda no duden en comunicarmelo. Lo dicho buenos días y semana a todos. Redimensionar.xls

    • 0

      Reacciones de usuarios

    • 16 respuestas
    • 4.1k visitas
    • 1 seguidor
  3. Hola amigos, buenas tardes Otra vez por aquí. Necesito un código para que me haga lo siguiente: Si en la celda “D9” se muestra GV2, aumentar un 5% a un rango de celdas, por ejemplo I11:I25 + I27:I41 + I43:I59. Si se muestra GV3, aumentar un 8% sobre los mismos rangos Si se muestra GV4, aumentar un 10%...... Por favor, si alguien pudiera ayudarme se lo agradeceré. Saludos Prueba2.rar

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 3k visitas
  4. Started by renato13,

    Buenas tardes amigos de "AyudaExcel" me podrian ayudar introduciendo un código para que aparezca un MsgBox que diga "No se encontro el dato" a no haber el dato en un código de busqueda que tengo no se donde colocarlo e probado unas opciones pero no mismo ya se que para ustedes será algo fácil pero para los que estamos iniciando se nos hace un poco dificil. Gracias por su ayuda amigos y una buena tarde Adjunto el código que tengo de busqueda en el cual quiero insertar el MsgBox Private Sub Buscar_Click() If cboLote.ListIndex > -1 Then Lote = cboLote Set celda = Base_Datos.Columns("A").Find(What:=Lote, LookAt:=xlWhole) If N…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
  5. hola, quisiera que me ayudaran con una duda, es si alguien conoce un codigo para autoajustar texto cuando las celdas estan combinadas, pero que este texto se ajuste al ancho de la columna porque si se hace por el alto de la fila, pues todos saben que la fila tiene un limite, para dar un mayor ejemplo, yo encontre un codigo el cual me autoajusta el texto en celdas combinadas pero al tamaño de la fila, que pasa cuando el texto es muy largo este expande hasta el maximo de la fila y queda texto sin ver toca ir y expandir el ancho de la columna para que se vea todo, la idea es que automaticamente por codigo el ancho de columna tambien se autoajuste, espero que me entiendan lo …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 5.9k visitas
  6. Buenos dias, Mi problema es que tengo un formato con diferentes macros pero me sucede que quiero que determinadas celdas que están combinadas Asi: B35:d47 luego E35:G47 luego H35:J47 si ingreso un texto que me exceda ese tamaño se ajuste automaticamente. [TABLE=width: 847] [TR] [TD=colspan: 3][/TD] [TD=colspan: 3] [/TD] [TD=colspan: 3] [/TD] [/TR] [TR] [/TR] [TR] [/TR] [TR] [/TR] [TR] [/TR] [TR] [/TR] [TR] [/TR] [TR] [/TR] [TR] [/TR] [TR] [/TR] [TR] [/TR] [TR] [/TR] [TR] [/TR] [/TABLE]

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 761 visitas
  7. Started by jeladio,

    Hola Amigos: Quisiera saber su existe algun macro que auto ejecute otro macro contenido en un formulario cada 2 segundos y que se empieze a ajecutar al abrir el formulario, lo que pasa es que en este formulario tengo un textbox que necesito que se actualice cada 2 segundos para tener datos actualizados. saludos

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.6k visitas
  8. 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
  9. Started by merlyn333,

    Buenas tardes amigos: Tengo lo siguiente: En la celda "Keywords!E2": =SI(D2<>"";CONCATENAR(Constructors!B2;" ";NOMPROPIO(Keywords!B2);" ";NOMPROPIO(Keywords!C2);" ";NOMPROPIO(Keywords!D2);" for ";Constructors!D2;" ";Constructors!E2);"") En la celda "Keywords!E3": =SI(D3<>"";CONCATENAR(Constructors!B3;" ";NOMPROPIO(Keywords!B3);" ";NOMPROPIO(Keywords!C3);" ";NOMPROPIO(Keywords!D3);" for ";Constructors!D3;" ";Constructors!E3);"") En la celda "Keywords!E4": =SI(D4<>"";CONCATENAR(Constructors!B4;" ";NOMPROPIO(Keywords!B4);" ";NOMPROPIO(Keywords!C4);" ";NOMPROPIO(Keywords!D4);" for ";Constructors!D4;" ";Constructors!E4);"") En é…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.1k visitas
  10. Started by armando couoh,

    Buenas Tardes , tengo el siguiente problema requiero un cuadro de lista en el que al darle un texto , se autoacomplete de los datos existentes en otra hoja, para eso ( archivo anexo) en la hoja pagos 2907 estoy poniendo un cuadro de lista vinculado con la macro , para que al darle un nombre , si este se encuentra existente en la hoja base de datos, me los traiga para autoacompletar, sin embargo al intentar poner el nombre me marca error en la macro y me da la opcion de depurar, alguien me puede ayudar para saber que estoy haciendo mal? Gracias LAYOUT BBVA Pagos Mixtos.zip

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 570 visitas
  11. Started by 123excel,

    hola a todos, estoy haciendo un tipo de plantilla en el excel, y necesito que una vez hecho el formato de la plantilla, (titulos, tamaño, colores......) quien quiera escribir despues, se le vea todo lo que escribe, (que no se vea cortado) he comprobado que en el word esto es posible, y es autoajustar el contenido, pero en el excel no hay manera, supongo que necesito algun tipo de macro, es importante que sepais que no lo puedo modificar el tamaño de la celda manualmente, porque como digo es una plantilla. Agradezco todas vuestras ayudas

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.7k visitas
  12. Started by lordantrax,

    Muy buenas tardes a todos, mi nombre es Gonzalo (LordAntrax) y deseo hacerles una consulta: Estoy creando gráficos con VBA en Excel. El tema es que todo corre perfecto, pero al momento de autoajustar el tamaño del mismo, no me deja hacerlo. El código es el siguiente: Al llegar a la sentencia .MinimumScale = Range("B6"), me da un error de que el objeto ya no es válido. Alguien me podría dar una mano con esto? :suspicion: Desde ya, muchas gracias. Saludos a todos

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.3k visitas
  13. Started by federtuc,

    Teniendo el largo de la celda B9 fijo, solamente lo que hago es autoajuste automatico del alto de la celda al cargar el dato, lo que me genera que quede mucho espacio en la celda dependiendo de los caracteres, como puedo hacer para que siempre el alto sea el justo, que no sobre ni un espacio? Dejo adjunto unas imagenes, donde pueden apreciar que la celda B9 se autoajusta pero innecesariamente le sobra mucho espacio en blanco.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 696 visitas
  14. Hola a todos, Como sabéis los gráficos de Excel tienen la posibilidad de autoajustar sus ejes X e Y de manera automática en las opciones de gráfico, pero por alguna extraña razón, cuando el rango de los datos de origen es superior a un valor determinado, el valor mínimo de los ejes te lo deja en 0, y no autoajusta adecuadamente la gráfica. Así, tratando de resolver este problema he creado el siguiente código: Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim objCht As ChartObject For Each objCht In ActiveSheet.ChartObjects With objCht.Chart ' Valores para el eje (Y) With .Axes(xlValue) .MaximumScale = She…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 5.6k visitas
  15. Buenas tardes a tod@s, He rebuscado y rebuscado, y probado una y más cosas, pero no soy capaz de solucionar este problema. Creado formulario con unas dimensiones de 960x702 en un monitor de 1280x1024 me encuentro con el problema que cuando lo ejecuto en otra máquina (p.e.: portatil con pantalla de 1024x768) el formulario no se muestra completo. He encontrado algunos códigos que deberían tomar la resolución del monitor dónde se ejecuta y redimensionar el formulario (cosa que algunos si hacen) y los controles de este (cosa que no he conseguido casi con ninguno de ellos, aunque con resultados extraños). He tratado de implementar una solución del usuario A…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.9k visitas
    • 1 seguidor
  16. Started by Puche,

    BUENO.xlsmHola buenas tardes, Tengo un Excel con un formulario de entradas en el que necesito poder aplicar el autocompletado en los textbox asignados a una columna en concreto de mi base de datos. Es decir, si el textbox de "contacto" por ejemplo, al empezar a escribir un nombre me haga el autocompletado segun el listado de ese encabezado de mi base de datos. Un saludo, Javier

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.1k visitas
    • 1 seguidor
  17. Started by magniflow,

    Buenas Tardes amigos: Hace unos días, el gran Macro Antonio me ayudo a resolver un problemita que tenia con un formulario y un combobox que hace un buscarv y lo autocompleta. Lo detallo más. Son 2 Combobox: RUC y Razón Social, cuando escribo el RUC, busca y coloca automáticamente la razón social y si escribo el comienzo de la Razón Social, busca y coloca automáticamente el RUC, hasta ahí perfecto. El problema surge cuando ingreso un RUC que no existe en la base de datos. En el Combobox RUC ingreso el nuevo número, pero cuando voy al otro combobox(Razón Social) y escribo, como que se autocompleta un RUC que si existe en la BD. y se borra el que digite manualmente. …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2.8k visitas
  18. Started by Visor,

    Estimados amigos del foro, planteo un tema respecto autocompletar texto en un control de vba. El autocompletado lo tengo resuelto para un textbox o combobox tomando en cuenta los datos de la hoja de excel. Me gustaría poder cargar el combobox con los datos que están en el listbox y allí aplicarle el autocompletado. Lo que sucede es que en realidad yo lleno al listbox con los nombres de los archivos que están en una carpeta (es decir los datos no están en una hoja). Espero que esto se pueda realizar. Agradezco su generosa colaboración Subo el archivo de ejemplo Autocompletar from Listbox.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.1k visitas
  19. Started by Vanesa Sarmiento,

    Hola Soy un poco nueva, y sé que lo que necesito es bien sencillo, pero no lo he logrado hacer Tengo una celda donde se debe poner el nombre del cliente, me gustaría que se autocompletara a medida que se va escribiendo el nombre del cliente, si no existe que se agregue a la lista. Agradezco de antemano la ayuda que me puedan brindar Libro2.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 603 visitas
  20. Started by Danielr,

    Hola a todos, En el archivo adjunto tengo creada una lista con la referencia de unos productos, cuando inserto en la celda que se encuentra en ROJO, quisiera que se me autocompletara o me sacara coincidencias con la lista que existe, me han dicho que es mediante el uso de visual, pero la verdad no tengo la mas mínima idea. Muchas gracias. Adjunto el archivo. Libro2.zip

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 4.3k visitas
  21. Hola tengo una archivo de datos de varias columnas que funciona con listas desplegables con indirecto (una depende de la anterior) y me gustaría tener en Mac una función similar a la de windows que me permita ver la lista de productos que tienen las letras que voy escribiendo en la lista que desprende el indirecto

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 460 visitas
    • 1 seguidor
  22. Started by racsover,

    Buenas, Antes de nada gracias por vuestro tiempo. Necesito que al escribir en los textbox se vayan autocompletando en base a una lista que tengo creada en excel. Se que es mucho mas facil hacerlo con un combobox pero el problema que tengo es que tengo creados mas de 500 textbox dentro de un formulario y los tengo vinculados a macros a traves de controls.item por lo que si cambio los textbox por combobox tendria que reprogramar demasiadas cosas. Gracias. Saludos

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2k visitas
  23. Started by jues,

    Saludos Amigos Encontré este código que según debía eliminar cualquier archivo de Excel sin que el mismo pudiera volver a ser utilizado o quedara en la papelera sin embargo al ejecutarlo ciertamente aparece el MsgBox e inhabilita el archivo para su uso sin embargo no lo elimina de donde este archivado no se si es que la versión en la que programaron ese código sea mucho mas antigua que la mía, de igual modo me interesaría saber si este mismo codigo puede ser usado para Macros en Word mucho les sabre lo que me puedan colaborar Option Explicit Private Sub Workbook_Open() Call Module1.AlAbrirLibro Dim exdate As Date exdate = "30/04/3100" …

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 744 visitas
    • 2 seguidores
  24. He estado buscando pero no he visto nada tipo lo mio, si hay algo, por favor disculpadme, me indicais y que se cierre el tema. Voy a explicaros un poco, lo que estoy haciendo y donde me e quedado atascada. He creado una tarifa, a la que quiero ponerle fecha de caducidad, para ello le he puesto una portada en la que obliga a habilitar las macros para que pueda funcionar, y dentro la fecha de caducidad, con la idea de que cuando haya pasado la fecha, el documento se autoelimine o se eliminen filas del mismo. Para obligar a que cada vez que se use el fichero se tengan que habilitar las macros, he deshabilitado las opciones de guardar con los comandos workbook.beforesave y…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 746 visitas
  25. Hola a todos, Estoy atascado en algo que debería ser sencillo, pero no lo consigo sacar por más que busco. Tengo un archivo el cual primero inserta 2 columnas a la derecha de una columna llamada "fRateBatcher"), después inserta unas formulas en las Offset(0 , 1), y después debe buscar donde el rango donde se han asignado las fórmulas (como ejemplo A3:B3) y copiar/pegar formula con ese rango variable hasta last row. Mi problema está siendo que no consigo encontrar el Range ya que el rango puede variar en columa, aunque no en fila. Este es el código que tengo ahora: Sub SANCMARC_Magic() Dim rng As Range Set rng = Range("A11:CDD11").Find("fRateBatch…

    • 0

      Reacciones de usuarios

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