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?
8682 temas en este foro
-
Buenas expertos! Tengo un problema con una macro que estoy intentando realizar. Lo que quiero hacer es realizar una búsqueda en una hoja de un libro1 y a partir de la celda encontrada seleccionar 12 celdas a la derecha y copiarlas a otro libro en una celda variable (lo estoy intentando con i,j para poder incrementar la i y baje a la siguiente fila). Esto lo quiero integrar en un bucle que vaya bajando por filas y siga copiandolas al otro libro como he dicho antes hasta que encuentre una celda en blanco. ¿Me podrían echar una mano a partir de la búsqueda? Gracias
-
0
Reacciones de usuarios
- 1 respuesta
- 609 visitas
-
-
Buenos días, Tengo un libro donde voy registrando datos en una tabla, y quiero que cada vez que haya cambios en la tabla se realice una acción, pero solamente cuando se haya completado el registro completo del registro. En la hoja adjunta, detecto cuando hay un cambio en un rango ,pero claro, cualquier cambio. y me gustaria poder detectar cuando se hace un cambio en la fila completa de la tabla. Adjunto tambien el fichero... Gracias Registro trabajo.xlsm
-
0
Reacciones de usuarios
- 0 respuestas
- 609 visitas
-
-
Estimados, muy buenas les solicito ayuda con este problema, el caso es que tengo una tabla en donde cargo con datos y la vez tengo otra hoja en donde a través de formulas llamo estos datos para darle formato de publicidad. Me gustaría hacerlo masivo, o sea cargar mas de 300 filas en la tabla, por ende debo elaborar mas de 1000 llamados en la otra hoja para que se carguen los datos lo cual resulta tedioso no imposible. Existe algún método en macro, en donde uno cargue los datos en la tabla y la vez se genere formato en la otra hoja de a cuerdo a la cantidad de datos que están(en la tabla). Se agradece cualquier ayuda de antemano GENERADOR.xlsm
-
0
Reacciones de usuarios
- 1 respuesta
- 609 visitas
- 2 seguidores
-
-
Hola, les pido apoyo para lo siguiente ? Tengo un formulario sencillo de consulta incompleto en el cual se pretende cargar los datos necesarios que están en la hoja Planilla (CÉDULA, NOMBRES TRABAJADOR, NÓMINA). En el formulario también hay un ListBox que al hacer la consulta por Cédula debe cargar todos los conceptos de la Hoja Planilla referentes a ese trabajador. muestradatos.xlsm
-
0
Reacciones de usuarios
- 1 respuesta
- 608 visitas
- 2 seguidores
-
-
buenas tardes a todos, he ido pidiendo ayuda y e logrado hacer bastantes cosas con un sistemita que me regalaron pero lo que quiero esta vez es poder hacer que mas de un usuario pueda ocuparlo ya que cuento con un servidor propio y no se como hacer xq no puedo compartir el libro xq tiene tablas me dice ojala me puedan ayudar adjunto archivo personal.rar
-
0
Reacciones de usuarios
- 0 respuestas
- 608 visitas
-
-
Hola amigos, saludos a todos, hoy me encuentro realizando un trabajo, pero necesito de su apoyo. He creado un código para poder importar datos desde una tabla de Acces, pero al ejecutar me sale un mensaje que hasta el momento no he podido encontrar la solución, es por eso que recurro a ustedes para su valioso aporte. Además, crear un código para un segundo filtro con la columna K. Les adjunto los archivos. Proveedor Corregido.zip Proveedores.zip
-
0
Reacciones de usuarios
- 0 respuestas
- 608 visitas
-
-
Buenas tardes amigos espero estén bien Hasta hace poco utilizaba esta macro para guardar mis datos: Private Sub CommandButton5_Click() ' Guardar en Matriz If TextBox1 = "" Then MsgBox "Datos Incompletos: La Casilla Nombres y Apellidos Esta Vacia", vbExclamation: Exit Sub Dim uf As Integer With Sheet10 uf = .Range("B" & Rows.Count).End(xlUp).Row + 1 .Cells(uf, 2) = TextBox1 .Cells(uf, 3) = TextBox2 .Cells(uf, 4) = ComboBox1 .Cells(uf, 5) = TextBox3 .Cells(uf, 6) = ComboBox2 .Cells(uf, 7) = ComboBox3 .Cells(uf, 8) = ComboBox4 .Cells(uf, 9) = TextBox4 .Cells(uf, 10) = ComboBox5 .Cells(uf, 11) = Tex…
-
0
Reacciones de usuarios
- 3 respuestas
- 608 visitas
- 2 seguidores
-
-
Buenas tardes amigos espero estén bien Modifique el frmcalendario para que solamente muestre los días Lunes de cada semana, bajo su configuración original resalta diariamente el fondo de los Label sin embargo necesito que resalte exclusivamente los Label (lb1, lb8, lb15, lb22, lb29, lb36) que correspondan al día Lunes de la semana que este en curso y por lo tanto el resaltado del Label en vez de cambiar a diario se haga semanalmente es decir, si hoy es Lunes 7 de Octubre se debería resaltar durante toda la Semana N° 41 el lb8 y el próximo lunes 14 se debería resaltar durante toda la Semana N° 42 el lb15 y asi sucesivamente. CALENDARIO PRUEBA.xlsm
-
2
Reacciones de usuarios
- 2 respuestas
- 607 visitas
- 1 seguidor
-
-
Hola a todos, soy nuevo en el foro, gracias por el soporte y la ayuda que prestáis. Mi cuestión es la siguiente: Tengo varias hojas que empiezan por el nombre "PRO" y necesito que el rango (b13:g64) de cada una de las hojas pegue los valores en la hoja "Dat" a partir de la primera columna en la siguiente fila vacía. Lo he intentado con el siguiente código pero solo pega los valores del rango" b" y no todo el rango. Sub prueba() Dim hj As Worksheet Dim x As Integer For Each hj In ActiveWorkbook.Sheets If hj.Name Like "PRO*" Then Sheets("Dat").Range("a" & Rows.Count).End(xlUp).O…
-
Mil disculpas soy nuevo en el foro y habia puesto este tratamiento en excel general Muy buenos días, quiero hacer una consulta, tengo una hoja1 con una tabla en excel del cual tiene muchos valores repetidos y y en otra hoja2 están los valores únicos, lo que deseo hacer es que cuando encuentre el valor que no se repite en la hoja2 me traiga en la hoja1 en una celda contigua de la hoja2 la palabra "existe" con la función buscarv no sirve porque me trae el primer registro entonces había pensado hacerlo con código vba pero me ha dado muy difícil he utiliza el ciclo for y do while pero siempre me trae los valores que estan ordenados y la tabla esta desordenada, de antemano …
-
0
Reacciones de usuarios
- 0 respuestas
- 607 visitas
-
-
Ola estoy tratando de enviar la Imagen del Userform/Imagen a una carpeta destinada en C:\Imagen dodne llegue con el nombre normal de la imagen. trato con algunos codigos pero me sale error, alguna falla que estare realizando a espera de sus comentarios y apooyo gracias. enviar imagen a carpeta.xls
-
0
Reacciones de usuarios
- 1 respuesta
- 607 visitas
-
-
Esto lo hice con un macro con referencia relativa, son cifras en la misma fila (196) , solo se debe ir avanzando hacia la derecha cada cuatro columnas. Creo que debería definir una variable que vaya acumulando los valores de cada celda, un bucle en donde se vaya avanzando. Pero no se cómo hacerlo. Muchas gracias.. ActiveCell.FormulaR1C1 = _ "='Flujo ingreso'!R[196]C[-3]+'Flujo ingreso'!R[196]C[1]+'Flujo ingreso'!R[196]C[5]" ActiveCell.Select Muchas gracias!!!
-
0
Reacciones de usuarios
- 2 respuestas
- 607 visitas
-
-
Buenas tardes. He hecho dos macros que imprimen dos pdf de diferentes páginas. Primero hago el pdf: Sub printdep() Dim nombre As String, Ruta As String, nombre2 As String Sheets("Horarios").Select Range("A1:Q42").Select ActiveSheet.PageSetup.PrintArea = "$A$1:$Q$42" Application.PrintCommunication = False With ActiveSheet.PageSetup .PrintTitleRows = "" .PrintTitleColumns = "" End With Application.PrintCommunication = True ActiveSheet.PageSetup.PrintArea = "$A$1:$Q$42" Application.PrintCommunication = False With ActiveSheet.PageSetup .LeftHeader = "" .CenterHeader = "" .RightHeader = "" …
-
0
Reacciones de usuarios
- 1 respuesta
- 607 visitas
- 1 seguidor
-
-
Hola a todos: ¿como podría concatenar la columna C y D de la siguiente macro de la cual su autor es Antoni, y que me la pegue en la hoja2 columna D? Muchas gracias por su tiempo y su apoyo. Bendiciones. Sub Copiar() Application.ScreenUpdating = False Set H1 = Sheets("ORIGEN") Set H2 = Sheets("DESTINO") H2.Range("A1:Z50000").ClearContents H2.Range("A1:Z50000").ClearFormats fila = H2.Range("A" & Rows.Count).End(xlUp).Row '+ 1 'Range("A" & fila) = "Albaranes" fila = fila '+ 1 ufila = H1.Range("A" & Rows.Count).End(xlUp).Row H1.Range("B1:B" & ufila).Copy: H2.Range("A" & fila).PasteSpecial 'xlValues …
-
0
Reacciones de usuarios
- 0 respuestas
- 607 visitas
-
-
Saludos. Vengo trabajando un libro con macros en Excel 2007 desde hace algunos años para elaborar horarios de profesores en la Facultad donde laboro. Al principio lo hacía bajo Windows XP y operaba muy bien. Cuando tuve que hacerlo en Windows 7 el comportamiento general y las macros al correr lo hace mucho más lento, la diferencia es notable. Se me parece a lo que reportó jguerrerot hace casi un par de años (22-03-12) bajo el título "Lentitud al ejecutar macro en dos máquinas distintas con procesadores diferentes", que entiendo permanece pendiente. Agradecería mucho si me ilustran al respecto y si hay algo que se pueda hacer. Gracias
-
0
Reacciones de usuarios
- 0 respuestas
- 607 visitas
-
-
Hola: No soy capaz de sacar este macro, soy un poco novel con el tema, a ver si podeis ayudarme. Necesito copiar en una hoja nueva la misma fila n veces (siendo n la cantidad de unidades del producto comprado) y además dividir el total por la cantidad n (numero de unidades compradas para sacar el precio unitario) Os adjunto un fichero con dos hojas, la hoja albarán son los datos en bruto y la hoja Resultado Deseado como necesitaría que quedara. Muchisimas gracias por adelantado. SALIDA_albaran.xlsx
-
0
Reacciones de usuarios
- 1 respuesta
- 607 visitas
-
-
AYUDA CON ESTE TEMA Hola expertos quisiera saber si hay alguna solución para este tema, ya no se que hacer no encuentro respuesta. Auxilio https://www.ayudaexcel.com/foro/threads/alimentar-bd-acces-exportando-un-excel.37638/ Gracias
-
0
Reacciones de usuarios
- 2 respuestas
- 607 visitas
-
-
Buenas tardes, Estoy realizando un macro donde me consolida toda la información o todos lo valores en una hoja , el mismo que me alimenta un grafico, este grafico siempre tiene que mostrarme los 3 ultimos meses. A B C D E 1 MESES TIENDA1 TIENDA2 TIENDA 3 2 OCTUBRE 1000 2000 3000 3 NOVIEMBRE 1800 2500 3200 4 DICIEMBRE 2500 5000 6000 5 ENERO 6 Para ser mas explícito, cada vez que ejecuto mi macro me agrega el nuevo con sus valores respectivos per mi grafico que siempre me debe mostrar la inf. de los 3 ultimos meses lo realizo manualmente, Este caso mi problema es actualizar el rango automaticamente, actualmente esta (b1:e1,b2:e4), cada vez q ejecuto la macro debe …
-
0
Reacciones de usuarios
- 0 respuestas
- 607 visitas
-
-
Estimados, junto con saludar los contacto para pedir ayuda. tengo un archivo genérico llamado "listado paises" al que deseo cambiarle el nombre de acuerdo a información que figura en otra planilla "paises y ciudades", especificamente en el campo llamado pais (en donde el valor puede estar repetido). Quisiera generar tantos archivos como paises hubiese, pero sólo un archivo por país. Asimismo, en cada uno de los archivos creados (en el libro que originalmente se llama listado paises y que luego se llama, pestaña BBDD Ciudades) necesito ingresar la información de las ciudades correspondientes al mencionado pais, la cual también se encuentra disponible en la planilla "pa…
-
0
Reacciones de usuarios
- 0 respuestas
- 606 visitas
-
-
He estado trabajando en una base de datos de un pequeño sistema de mantenimiento el cual tome un archivo de esta pagina y la he estado adaptando a mis necesidades, hice un pestaña en la parte de maestro de fallas etc, llamado cerrar trabajos pero requiero que en el combobox solo me muestre los numero de ot el cual no tengan fecha de finalizacion con el fin de que no me muestre todos, y por consiguiente no engorde la base de datos, el usuario de mi archivo es jesus y la contraseña es martha, anexo vinculo del archivo... Nueva carpeta
-
0
Reacciones de usuarios
- 0 respuestas
- 606 visitas
-
-
Hola que tal, tengo un inconveniente cuando mi codigo trabaja, al momento que hace la copia a las otras hojas nuevas, solo copia datos, lo que yo quisiera es que copie las formulas y no solo los datos. Sub ExtractRepsAA() Dim ws1 As Worksheet Dim wsNew As Worksheet Dim rng As Range Dim r As Integer Dim c As Range Set ws1 = Sheets("MENSUAL") Set rng = Range("Database") 'extract a list of Sales Reps ws1.Columns("A:A").AdvancedFilter _ Action:=xlFilterCopy, _ CopyToRange:=Range("AU1"), Unique:=True r = Cells(Rows.Count, "AU").End(xlUp).Row 'set up Criteria Area Range("AW1").Value = Range("A1").Value For Each c In Range("AU2:AU" & r) 'add the r…
-
0
Reacciones de usuarios
- 0 respuestas
- 606 visitas
-
-
Buen dia Tengo dos tablas en power pivot, en una tengo las ventas por canal de distribucion (tabla ventas) y en la otra tabla los que se gana el distribuidor por canal (flete), como hago para traerme a la tabla de ventas el valor pagado por canal (Ttal_Flete_Vrbl) de la tabla de fletes, teniendo en cuenta que el valor corresponda a la misma ruta y el mismo canal Agradezco su colaboración Fernando Trujillo Consulta PowerPivot.xlsx
-
0
Reacciones de usuarios
- 1 respuesta
- 606 visitas
-
-
Hola. Necesito una macros que de la hoja 1, cambie los nombre de las próximas hojas, según la columna A y que los datos de la fila 1 se copien en la hoja según el nombre de la hoja. Ejemplo: Celda A1 es el nombre de la hoja 2, y los datos de la fila B1:E1 deben ir en esa hoja, pero en la fila A3:D3 Celda A2 es el nombre de la hoja 3, y los datos de la fila B2:E2 deben ir en esa hoja, pero en la fila A3:D3 Envío una muestra, ya que son mas de 2.000 columnas. Gracias desde ya.
-
0
Reacciones de usuarios
- 2 respuestas
- 606 visitas
-
-
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
- 606 visitas
-
-
hola buenas tardes deseo realizar una búsqueda de datos con relación a mi archivo que dejo como ejemplo. al momento de abrir mi archivo deseo que me abra un formulario para poder realizar una búsqueda de acuerdo a apellidos y nombres porque con las teclas ctrl + b en ocasiones no encuentra el valor a buscar. gracias por su ayuda Alfabetico 98.xls
-
0
Reacciones de usuarios
- 4 respuestas
- 606 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.