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?
8690 temas en este foro
-
Saludos amigos tengo un formato el cual he hido adjuntando varias macro con diferntes instrucciones y necesito adjuntar una nueva que haga lo siguiente, al Imprimir una o varias de las hojas del libro se vaya creando un archivo en PDF con el mismo nombre del libro, en la hoja DATOS hay una celda (C16) que le da el nombre del libro que generalmente es un numero, he revisado varios proyectos pero ninguno se adapta a mi requerimiento, tambien en el editor de vb en la hoja ThisWorkBook hay una macro que se ejecuta antes de imprimir intente usar esta instruccion pero no me funciono Sub GuardaPDF() Dim rutaarchivo As String rutaarchivo = "C:\PDFs\" ActiveSheet.Expor…
-
0
Reacciones de usuarios
- 0 respuestas
- 720 visitas
-
-
Buenas noches. Tomando una macro autoespandible lo utilice para crear un calendario que me ayude a llevar el registro de entrada y salida de personal administratico con rangos de tolerancia y me muestre un semaforo. Sin embargo tengo la nececidad de insertar comentarios, todo funcionaba bien hasta que en la fila 160 inserte un comentario en la casilla H160 y al intentar contarer la 2da semana de febrero me marca el error 1004 en tiempo de ejecución: No se puede asignar la propiedad hidden de la clase de rango, pues al eliminarlo funciona correctamente. No se si es por el comentario pero he intentado arreglar el error y nadamas no queda. Si alguien me puede ayudar se l…
-
0
Reacciones de usuarios
- 0 respuestas
- 600 visitas
-
-
Hola como les va; Estoy generando una orden de producción para mi trabajo. He realizado de manera arcaica una código que me permite guardar los datos de la orden a una base de datos con un contador, mismo que ligue para llevar un folio consecutivo para después poder generar un reporte de ventas en una tabla dinamica. Sin embargo cuando quise hacer el guardado de la columna A10, A11, A12 etc... encontré la dificultad para poder guardar los datos y considero me pasará lo mismo con las otras columnas, ya que se sobreescriben los datos. Alguien que me pudiera ayudar en resolver este asunto o darme alguna otra idea de como generar el formulario. Anexo mues…
-
0
Reacciones de usuarios
- 5 respuestas
- 1.3k visitas
-
-
buen dia como hago una macro donde pueda seleccionar la hoja donde se buscaría el material y en ella se colocaría el precio costo que esta asignado en la hoja resumen ubican dolo en la columna E de la hoja seleccionada y a cada material. INVENTARIO.zip
-
0
Reacciones de usuarios
- 12 respuestas
- 1.8k visitas
-
-
Hola amigos tengo una macro que inserta una imagen en un control image y en una carpeta de imagenes, funciona bien hace su función casi perfecta, pero tengo un pequeño detalle cuando doy click en el botón donde esta la macro y aparece el explorador de windows y no selecciono ninguna imagen, pero cierro el explorador me arroja un error diciendo "archivo no encontrado".Alguien podrá ayudarme en revisar mi macro y decirme que me falta para que esto no suceda. Gracias por su atención. Private Sub CommandButton4_Click() ArchivoSeleccion = Application.GetOpenFilename ' Elegimos la imagen y la ruta Altas.Image1.Picture = LoadPicture(ArchivoSeleccion) ' cargamos la im…
-
0
Reacciones de usuarios
- 2 respuestas
- 1.9k visitas
-
-
buenos dias como podria obtener el valor de la fila 2 dependiendo de la columna donde me encuntre. por ejemplo si estoy en la columna D, fila 100 como puedo obtener el valor de la celda D2 y asi independiente de la columna que me encuentre obtener el valor de la fila 2 segun la columna Gracias
-
0
Reacciones de usuarios
- 1 respuesta
- 654 visitas
-
-
Hola amigos de AyudaExcel Requiero de su ayuda para corregir una macro que he intentado de solucionar para no logro conseguirlo. Les explico. Tengo la hoja UNO la cual tiene un botón para insertar una nueva hoja (que es una copia de la hoja HOJA PARA COPIAR), la macro del botón llama a otra macro para renombrar la hoja nueva pero lo que hace es agregar una nueva hoja en blanco y esa es la que renombra. No logro vincular con la hoja que realmente debería renombrar. Gracias de antemano EJEMPLO PARA RENOMBRAR HOJA.xlsm
-
0
Reacciones de usuarios
- 5 respuestas
- 18.7k visitas
-
-
Buenas tardes, les saludo cordialmente deseo me puedan ayudar con lo siguiente: el adjunto tiene un formulario para cambiar contraseña de usuario; estos (usuarios) se almacenan en otro libro el formulario solicita USUARIO, CODIGO (esto para validar la autenticidad), NUEVA CONTRASEÑA y CONFIRMAR NEUVA CONTRASEÑA el problema que tengo es al momento de guardar la nueva contraseña, (No guarda la información del txtnpass2) cambiar contraseña.xlsm usuariosprueba.xlsx
-
0
Reacciones de usuarios
- 4 respuestas
- 1.2k visitas
-
-
Buenos días a todos; -Una pequeña ayudita si es posible. -Adjunto una macro que en su día amablemente me ayudó a configurar Antoni. Como es habitual en él funciona de maravilla. He querido si es posible ir un poco mas lejos y es que en el momento que calcular el subtotal en dicha línea me indique el número de cuenta. Adjunto marco e imagen del resultado. Gracia como siempre por vuestra ayuda y buen finde. MSubtotales.xlsm
-
0
Reacciones de usuarios
- 2 respuestas
- 1.9k visitas
-
-
Pues eso... Digamos que tengo una hoja repleta de botones con macros y quiero dejarla estática, es decir, que el usuario no se pueda desplazar a través de ella haciendo uso de la ruleta del mouse. Supongo que existirá alguna manera más sencilla de programarlo, pero pienso que lo más lógico sería anular la propiedad SmallScroll del objeto Windows. Muchas gracias de antemano por vuestro tiempo.
-
0
Reacciones de usuarios
- 9 respuestas
- 2.1k visitas
- 1 seguidor
-
-
Buenos dias, expertos por necesito una ayuda con un formulario llamado UserMov no me esta mostrando la consultas desde la fecha del 2 de enero hasta la fecha, pero desde 1 de enero atras me consulta muy bien; no muestra ningun error solo borra la lista, ¿ cual sera la falla del sistema ya que he revisado y no encuentro un error alguna.Por favor ayudenme cual es la razón con la que no me muestra los datos desde las fechas indicada. Adjunto el sistema desde el googledrive ya es supera las megas maximas al foro. Usuario: admin Contraseña: admin https://drive.google.com/file/d/17Jvu_HeldTNMHcpS6wUTUWa2wt1S24F0/view?usp=sharing
-
0
Reacciones de usuarios
- 4 respuestas
- 705 visitas
-
-
Hola a tod@s. Tengo el siguiente código. Sub Auto_Open() OcultarHojas End Sub Sub OcultarHojas() Dim Ws As Worksheet For Each Ws In ThisWorkbook.Worksheets If Ws.Name <> ActiveSheet.Name Then Ws.Visible = xlSheetHidden Next Ws End Sub Funciona bien, abre en la última hoja activa. Pero...... los vínculos de esta a las otras (50) no funcionan, ¿ Que le falta al código ? Salu2
-
0
Reacciones de usuarios
- 5 respuestas
- 941 visitas
- 2 seguidores
-
-
Buenas tardes Vengo a pedir consejos de procedimientos sanos que eviten problemas cuando una tabla de transacciones vaya creciendo mucho. Alzo una carpeta en donde están dos libros muy básicos y en uno de ellos uso INDICE y COINCIDIR pero buscando en el otro libro. En el libro de compras están escritas mis dudas. Muchas gracias. Rubén 2023_0523 Compras00.xlsx 2023_0523 Proveedores00.xlsx
-
0
Reacciones de usuarios
- 2 respuestas
- 688 visitas
- 1 seguidor
-
-
Saludos a todos, Macro o Modulo que oculte las filas si el numero en la celda es mayor , pero por fila por ejemplo: la fila 1 tiene la celda B1 pero si es mayor que 700 que se escondala fila 1, si es menor que 700 que no se esconda la fila 1 (IF B1 >700 esconder fila1 then IF < 700 no esconder fila1) la fila 2 tiene la celda B2 pero si es mayor que 900 entonces que se esconda la fila 2 si es menor que 900 que no se esconda la fila 2 (IF B2 >900 esconder fila2 then IF < 900 no esconder fila2) la fila 3 tiene la celda B3 pero si es mayor que 2000 entonces que se esconda la fila 3 si es menor que 2000 que no se esconda la fila 3 esto es = (IF B3>…
-
0
Reacciones de usuarios
- 7 respuestas
- 1.6k visitas
-
-
Tengo un libro “Presupuesto de Obra", el Cual tiene una Hoja llamada Presupuesto, que contiene las Columnas: Ítem, Descripción, unidad, Vr unitario y Vr Total. También tiene una hoja llamada: “1.1” (su nombre hace referencia a los datos de la celda (A9) de la Columna Item, para Hacer esto, necesito una macro o modulo que Copie la Hoja “1.1” y tome su nombre de los datos de las celdas siguientes en la Columna Item de la Hoja Presupuesto. Luego de llenar los datos en la Hoja Copiada, lleve el resultado a la celda (I50 Subtotal APU)correspondiente de la columna Vr unitario de la hoja presupuesto. Gracias por su apoyo. Presupuesto de Obra.zip
-
0
Reacciones de usuarios
- 7 respuestas
- 1.8k visitas
-
-
hola tengo una duda, tengo un macro que quiero se ejecute en varias celdas de manera ordenada con la condicional que si hay una celda vacía deje de ejecutarse. les agradesco su sugerencia
-
Hola a todos! He estado revisando los temas que hay relacionados con mi duda y no he sabido encontrar nada que se adapte a lo que busco. Creo que para los "megacracks" que hay aquí, os será sumamente facil, pero como yo no tengo ni idea de programar, pues una ayuda me vendria muy bien. Muy rápido. Tengo varios archivos como el que os subo "Hoja Actividades 1", "Hoja Actividades 2", "Hoja Actividades 3"...y así hasta 10. Todas con idéntica estructura de columnas. Necesitaria crear un libro nuevo que se podria llamar "Hoja Actividades TOTAL" que a través de una macro capturara la información de las 10 hojas de actividades y las agrupara en la TOTAL, en una unica pestañ…
-
0
Reacciones de usuarios
- 10 respuestas
- 3.7k visitas
-
-
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
- 3k visitas
-
-
Buen Día Amigos: Tengo la siguiente inquietud: existe algun macro para separar rangos numericos del tipo: "1-5, 7, 9-11 " si este estuviese en la celda A1 convertirla en la celda A2 en: 1,2,3,4,5,7,9,10,11 para que quede algo como la imagen adjunta. saludos [ATTACH]36372.vB[/ATTACH]
-
buen día a todos, les comento que estoy tratando de armar una macro para un generador de facturas o notas de venta. el asunto es que necesito que tenga las siguientes características: 1.- al dar clic en un botón asignado guarde como archivo nombre: folio de factura"(G4) y la fecha de expedición (E8) en formato .xls 2.- imprima el documento (si es posible con dos copias). 3.- el folio (G4) aumente +1 después de imprimir y deje en blanco los rangos de celdas "B16:C34" y "C7". quedando de esta forma listo para generar la próxima factura. de antemano gracias y saludos!!! ayuda excel.zip
-
0
Reacciones de usuarios
- 2 respuestas
- 3.3k visitas
-
-
hola estoy haciendo un formulario para modificar datos, con esta rutina me muestra los datos en el formulario, funciona muy bien Private Sub UserForm_Initialize() With ComCod .ColumnHeads = True .ColumnCount = 2 .ListWidth = 130 .ColumnWidths = "30;100" .RowSource = Range("A6:B" & Range("A" & Rows.Count).End(xlUp).Row).Address End With ComEstEmp.AddItem "Activo" ComEstEmp.AddItem "Inactivo" ComEstEmp.AddItem "Despedido" ComEstEmp.AddItem "Renuncio" End Sub Private Sub ComCod_change() Dim rango As Range Set rango = Range("A:A").Find(What:=ComCod, _ LookAt:=xlWhole, LookIn:=xlValues) TextNomb = Range("B" & rango.Row) Tex…
-
0
Reacciones de usuarios
- 4 respuestas
- 775 visitas
-
-
Buen día, Tengo una hoja de Excel en donde se va generando una base de datos con un folio consecutivo, realizo una búsqueda por el número de folio y lo cargo en un formulario donde complementan información y la guardan en otra hoja donde que vinculado por el numero del folio. El problema es que cuando encuentra el folio y carga el formulario no pone los datos, tengo que salir del formulario y volver a buscar y entonces ya lo carga correctamente, una ves mostrado se complementa la información guardo y todo bien, pero busco otro folio y se queda con los datos anteriores, tengo que salir y volver a buscar...Cómo puedo hacer para que lo haga a la primera? Gracias de anteman…
-
0
Reacciones de usuarios
- 6 respuestas
- 2.1k visitas
-
-
Buscador Diag&Dispatch - Filtrar ListBox en cascada - Error devuelve solución. Hola amigos, Estos trabajando en un Formulario que trabaje de la siguiente manera. Un total de 3 ListBox relacionadas entre si. El primer ListBox los servicios ofrecidos. Dependiendo lo seleccionado en el Primer ListBox muestra las aplicaciones de este servicio. Selecionando en el segundo ListBox la aplicación, muestra los errores de esta. Por ultimo seleccionando el error en la tercer ListBox, muestra la solución del error en el TextBox1. Tambien me gustaria que en el textBox2 al poner el error, aparezca la solución en el TextBox1. Ando un poco perdido, me podriais ayudar?…
-
0
Reacciones de usuarios
- 0 respuestas
- 725 visitas
-
-
HOLA NENES, NECESITO AJUSTAR DISTINTOS ESPACIOS DE 3 COLUMNAS EN UNA MACRO, GRACIAS! BESOS A TODOS:mushroom::mushroom::mushroom:
-
0
Reacciones de usuarios
- 1 respuesta
- 831 visitas
-
-
Buenas Tardes, mi consulta es la siguiente ,tengo una secuencia en macros para que realize una copia de una hoja en otro libro y la guarde en una determinada ruta, este me funciona perfectamente con el boton de Formulario, pero al realizar este mismo macros en un boton Activex me lanza un error de compilacion. Por favor su ayuda , no puedo subir el archivo porque es demasiado pesado , este es el macros... Sub Macro1() Application.ScreenUpdating = False Range("D8").Select Selection.Copy Sheets("Liquidacion").Select Range("F11").Select ActiveSheet.Paste Sheets("Detalle").Select Range("E8").Select Application.CutCopyMode = False …
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k 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 sergio@ayudaexcel.com
Información adicional: Encontrarás más información en la política de privacidad.