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?
8685 temas en este foro
-
Buenas noches amigos de Ayuda Excel. Estoy atorado en una parte del proyecto, y quiero consultarles de que manera se podria realizar lo siguiente. Estoy haciendo un archivo de registro de entradas y salidas de equipos seriabilizables, pero necesito que al capturar el serial del equipo con una lectora de codigo, la macro me verifique si este esta en la tabla de la hoja "Salidas", si el serial esta en dicha tabla, necesito que la macro me traiga la informacion de ese rango de fila, y lo agregue en otra tabla ubicada en la hoja "Entrada", y que adicionalmente agregue en esa misma fila, al lado de la fecha de egreso, la fecha de hoy (ingreso) con su hora (de la mism…
-
0
Reacciones de usuarios
- 17 respuestas
- 2.3k visitas
-
-
Buenas tardes todos los miembros de éste fantástico foro. Estoy intentando hacer una macro pero me surge una duda, os agradecería mucho vuestra ayuda. La duda es; Tras hacer un filtro en dos columnas ¿cómo puedo copiar el rango de celdas que queda visible (con el encabezado) y pegarlo en otra hoja? Adjunto archivo, la idea sería copiar el rango ya filtrado de la "Hoja 1" a la "Hoja 2". Muchas gracias por vuestra valiosa ayuda. Un saludo Copiar celdas visibles.xlsm
-
0
Reacciones de usuarios
- 3 respuestas
- 13.7k visitas
- 1 seguidor
-
-
Hola! Para ser el primer tema sobre el que pido ayuda, empiezo fuerte, al menos para mi lo es. El caso es que tengo un libro excel con varias hojas una de ellas tiene los datos los cual quiero explotar para luego sacar ciertas estadísticas. Y no se me ocurre otra forma que no sea con macros-vba. pero he intentado hacer algun ciclo anidado con for, pero me estoy volviendo loco. Del libro que adjunto, el objetivo es: Coger de la hoja datos y sumar por años y por meses los valores que la columna Dato1 sea "Si" y rellenar la hoja Copia según muestro en el libro, pero de forma automática, cada vez que se haga un cambio en la hoja Datos. La hoja datos se va …
-
0
Reacciones de usuarios
- 4 respuestas
- 773 visitas
-
-
Hola compañeros, Estoy tratando de crear un evento de tipo Worksheet_Activate de tal manera que cada vez que un usuario activa la hoja, el evento reconozca si existe una tabla dentro de la hoja activa (en caso contrario, insertar la tabla). Se me ocurre algo así... Private Sub Worksheet_Activate() Const HOJA As String = "CALENDARIO" Const TABLA As String = "CALENDARIO" Dim contador As Byte For contador = 1 To ActiveSheet.ListObjects.Count ' Si la tabla no existe dentro de la hoja, entonces... If ActiveSheet.ListObjects(contador).Name <> TABLA Then ' Insertamos la nueva tabla... ActiveSheet.ListObjects.Add(xlSrcRang…
-
0
Reacciones de usuarios
- 4 respuestas
- 5k visitas
-
-
Hola!! Creé un módulo de clase para obtener el último dato en una fila o columna específica, hasta hace unos días funcionaba a la perfección, la exporté a mi disco duro y en cada nuevo proyecto la incluía dentro de los módulos de clase. Desde el módulo principal defino la respectiva variable que hace uso del módulo de clase con DIM y SET sin tener problemas, el módulo de clase original lo desarrolle desde abril de este año, y como comenté no me había dado ningún problema. El código del módulo de clase se llama clsUltimoDato, y el código es el siguiente: Private Fila As Integer Private Columna As Integer -------------------------------------------------------…
-
0
Reacciones de usuarios
- 0 respuestas
- 531 visitas
-
-
Buenos días Tengo esta macro que cumple con el resultado que estoy buscando, pero necesito hacerle una modificación y no se cómo Sub UltimaFila_3() On Error Resume Next MsgBox ActiveSheet.Columns("A").Find("*", _ searchorder:=xlByRows, searchdirection:=xlPrevious).Row End Sub Lo que busco es que el valor obtenido no sea en un botón sino que el resultado obtenido pueda verse en una celda específica Desde ya muchas gracias al que pueda ayudarme Slds
-
0
Reacciones de usuarios
- 1 respuesta
- 1.5k visitas
-
-
en las celdas desde la V2 a la V50 tengo en formato general los siguientes números: V2=510.941,44 V3=300,150.19 V4=156169,84 V5= 110023,59 quisiera una macro vba que en el caso de encontrar un separador de miles como en v5 lo elimine sea este un punto o una coma y si no tiene separador de miles como en v3 que no haga nada debería quedar V2=510941.44 V3=300150.19 V4=156169.84 V5= 110023.59 Es decir que los números finales deben quedar sin millares y con un punto para separar los centavos además el resultado debe pegarse en el rango que va de BA2 A BA50 Desde ya muchas gracias por la respuesta
-
0
Reacciones de usuarios
- 7 respuestas
- 791 visitas
- 1 seguidor
-
-
Buenas. Necesito de su ayuda, en la oficina manejamos muchos archivos de excel q pasamos al sistema de la empresa codigo por codigo. Hay manera de crear una macro en excel que salte entre excel y el sistema incluyendo la informacion por nostros? Explico: Codigo Descripcion Cantidad 10000 pañal 1 10001 toalla 1 ahora bien, necesito q al activar la macro excel vaya a mi sistema y ponga esos datos, cuanto termina una linea, sigue con la otra, Es posible?
-
0
Reacciones de usuarios
- 2 respuestas
- 1.3k visitas
-
-
Hola a todos, este es mi primer post en esta comunidad, y seguro no va a ser el último. Mi consulta es la sisuiente: Tengo una HOJA en donde cada FILA son los datos de personas, y lo que necesito hacer un fichero con cada persona, o sea quiero saber como hay que hacer para que me imprima a cada persona en una ficha (miden 9cm X 15cm). Excel deberia tomar los datos de cada persona y enviarlos al buffer de la impresora y nada mas... nose si me expresé bien. saludos a todos y gracias!:stung:
-
Problemas con el DTPicker Hola a todos. He creado una plantilla, que algunos de ustedes ya me ha ayudado en su armado de una u otra forma. El asunto es que para el ingreso de los datos en la plantilla uso un Userform. Lo que ocurre es que agregue a este formulario unas casillas de DtPicker para marcar unas fechas (evaluacion, nacimiento, vencimiento de documento), pero al hacer click en el boton "GUARDAR DATOS" al final del formulario la fecha que se copia en los tres DTPicker es 00-01-1900, y obviamente no me sirve. ¿Por favor ayuda para configurar el DTPicker para que traspase a la plantilla la fecha exacta que yo pongo en el formulario? Les agradezco a quienes se pu…
-
0
Reacciones de usuarios
- 5 respuestas
- 1.4k visitas
-
-
Buenos dias: Aca les adjunto mi archivo que estuve creando. Por ahi alguno les puede servir. El problema que tengo y no lo puedo solucionar es el siguiente. 1-En la hoja de VENTAS me guarda todos los datos cuando confirmo el pedido en la hoja PRINCIPAL. 2- Cuando en la hoja principal confirmo un pedido con 2 articulos , me guarda celdas con espacios vacios y me quedan muchas vacias. Mi idea es que en la hoja de Ventas pueda sacar esos registros que no tienen articulos. No se si me explico bien. Cualquier ayuda que me puedan dar es bienvenida. Soy novato en el foro y espero poder ayudarlos en alguna otra cosa. PROYECTO_PEHUENretocado.zip
-
0
Reacciones de usuarios
- 10 respuestas
- 995 visitas
-
-
Hola buen día!! El problema que tengo es el siguiente: Tengo activa una hoja de excel y cargo un formulario, estoy trabajando con el y necesito consultar información de la hoja de cálculo y en ocasiones colocar un importe en la misma para posteriormente seguir trabajando con el formulario. ¿Es posible, que pueda hacer esto sin que descargue el formulario y lo tenga siempre a la vista? Agradeceré las respuestas y saludos!!!
-
0
Reacciones de usuarios
- 1 respuesta
- 836 visitas
-
-
Buenas, me gustaría que me ayudarais a hacer una macro, si alguien tiene tiempo claro. Yo creo que es una macro sencilla, pero por mas que lo intento no lo consigo. Lo primero que necesito es que busque los datos de las columna A de Hoja1 en la columna C de la Hoja2 y si son iguales copie el valor correspondiente de columna M de Hoja2 en la columna escogida. Para escoger la columna donde pegar, un menú desplegable con la selección de los meses. Una vez escogido el mes, se pulsa un botón (TICKET) y se realiza la búsqueda y pegado. Luego necesito un cuadro de texto donde introduzcas una medida de la columna A, y dando al botón COLOR se ponga de un color, dependiendo del m…
-
0
Reacciones de usuarios
- 0 respuestas
- 890 visitas
-
-
Buenos dias, necesito ayuda tengo una lista de nombres hypervinculados y he creado una macro para q me copie esos nombres de una hoja a otra del mismo libro pero el problema es q me copia solo los nombres sin el hypervinculo como lo puedo solucionar para que me haga una copia exacta? Muchas gracias Un saludo Este es el código q tengo: Public Const columna_inicio = 4 Public Const fila_inicio = 21 Sub prueba() Application.ScreenUpdating = False Sheets("Inicio").Select Servicios = Cells(fila_inicio, columna_inicio) Sheets("Hoja1").Select i = 2 j = 13 Do While Cells(i, 2) <> "" If Cells(i, 2) = Servicios Then servicio = Cells(i, 1) Sheets("Inicio").Sel…
-
0
Reacciones de usuarios
- 2 respuestas
- 750 visitas
-
-
Hola gente del foro, de nuevo yo lo que pasa es que en la macro que ando haciendo quiero implementar un combobox (el codigo que tengo no me quiere dar y no me muestra los datos que están en la hoja que le indico los debe tomar). fuera de esto no sabría como hacer que en un listbox me muestre unos datos dependiendo del nombre en el combobox y que estos los pueda agregar a una columna en una hoja. les adjunto un ejemplo a ver que tal. De ante mano muchas gracias por la ayuda . :nevreness: PRUEBA MACRO - copia - copia.rar
-
0
Reacciones de usuarios
- 2 respuestas
- 1.2k visitas
-
-
Amigos: Tengo un libro de excel el cual cree una macro para imprimir y otra para guardar los datos en una carpeta especifica. Actualmente al apretar guardar este lo realiza con el nombre que yo especifico de unas celdas y lo almacena en la carpeta especifica creando otro libro. Ahora lo que necesito es que los datos solo se guarden valores y formatos sin macros. al momento de apretar el command_Button de guardar. Las macros son: Private Sub CommandButton1_Click() Range("A1:H45").Select ActiveSheet.PageSetup.PrintArea = "$A$1:$H$45" Application.Dialogs(xlDialogPrint).Show End Sub Private Sub CommandButton2_Click() Sub Convertir_a_valores() Dim wshHoja As Ex…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.3k visitas
-
-
Buenas noches, seré lo mas concreta posible, tengo 2 archivos de excel : el primer archivo tiene unos rangos de precios y cada rango tiene un % de descuento asignado. el segundo archivo solo tiene una fila de precios y tengo que poner junto a cada precio el % de descuento que le corresponda según el rango que se ocupe en el primer archivo. la cantidad de filas en ambos archivos en variable muchas gracias, Maripili,:upset: maripili.zip
-
0
Reacciones de usuarios
- 3 respuestas
- 734 visitas
-
-
Bueno como el titulo lo dice quisiera que el listbox mostrara solo el rango de datos filtrados en este caso la fecha. no quiero que considere en los datos que muestra la fecha 00-01-1900 el filtro ya esta aplicado en la hoja reporte naves espero haberme explicado bien. adjunto archivo para su revisión de ante mano muchas gracias. PRUEBA REPORTES.rar
-
0
Reacciones de usuarios
- 0 respuestas
- 1.3k visitas
-
-
Oculte el libro tratando de cargar un formulario y ahora no lo puedo abrir... Se que hice una tonteria pero necesito ver el libro ayuda
-
0
Reacciones de usuarios
- 3 respuestas
- 833 visitas
-
-
Hola a todos!!!! Espero puedan ayudarme a resolver este pequeño problema! Estoy creando una macro para que se cambien "dinamicamente" las etiquetas de datos de un grafico, el máximo de etiquetas que puede tener dicho gráfico son 8 . Y para lograrlo quiero insertar el siguiente codigo para que primero agregue las etiquetas de datos y después mediante la fucion If decida si la etiqueta de gráfico existe para asi asigarle el valor que se encuentra en una celda de la hoja. El codigo es algo asi: Private Sub CommandButton1_Click() ActiveSheet.ChartObjects("Gráfico 1").Activate With ActiveChart .FullSeriesCollection(1).Select .FullSeriesCollection(1).Appl…
-
0
Reacciones de usuarios
- 0 respuestas
- 798 visitas
-
-
Hola amigos expertos, hoy vengo con un problema que no logro resolver. Tengo dos hojas en un libro de Excel ,(SALIDAS,DEVOLUCIONES de PRODUCCIÓN),en esta ultima tengo un formulario de modificación de datos, el problema es que necesito modificar los datos en ambas hojas, porque los registros de la hoja de devoluciones se vacían en la hoja entradas también.Agradezco de antemano su ayuda.Reciban un cordial saludo. EJEMPLO DE MODIFICACION EN AMBAS HOJAS.rar
-
0
Reacciones de usuarios
- 1 respuesta
- 778 visitas
-
-
Hola a todos, la verdad es que no tengo una macro ni nada para esta consulta. Sucede que tengo un libro de macros que funciona en cualquier PC con Excel en idioma Español, pero al ejecutar el programa en Excel en Ingles no corre las macros. Entonces no sé que se podría hacer en ese caso, para que funcione en los 2 idiomas o en cualquiera. Muchas gracias.
-
0
Reacciones de usuarios
- 5 respuestas
- 2.6k visitas
-
-
Buenas tardes a todos. Necesito ayuda! tengo un formato en excel para capturar calificaciones pero se ha de entregar el archivo a cada docente para que capture en tres tiempos calificaciones y asistencias. Ya intenté con funciones y fórmulas pero no consigo lo que necesito para la columna de %A. Les explico: hay cuatro periodos de captura, cada periodo tiene un determinado número de sesiones, en cada periodo las asistencias deben reflejar el %A total hasta ese momento. por ejemplo si en el primer periodo cumple con 8/8 en %A aparece el 100%. En un segundo tiempo de captura, el profesor ingresa el número de sesiones del periodo por decir 7/7, deben sumarse las dos asis…
-
0
Reacciones de usuarios
- 1 respuesta
- 634 visitas
-
-
Hola, tengo esta macro que da formato a un reporte en excel, pero aun no me queda al 100 tiene algunos errores cuando separa las lineas que son diferentes aveces no lo hace, supongo que la validacion esta mal, y el encabezado aun no se como insertarlo, adjunto los archivos de antes(como se genera el reporte antes de la macro) y despues(como debe quedar) espero me puedan apoyar ya que soy nuevo en esto, Gracias Sub eliminartotal() ' Seleccionar celda A2, *primera línea de datos*. Range("A2").Select ' Configurar el bucle Do para que se detenga al llegar a una celda vacía. Do Until IsEmpty(ActiveCell) ' Inserte el código aquí. ActiveCell.SpecialCells(xlLastCell).Sel…
-
0
Reacciones de usuarios
- 1 respuesta
- 2.4k visitas
-
-
DUDA. Adjunto Código. Tengo casi tres semanas de trabajar en este proyecto para aprender. El usuario al digita el primer valor en C2, entonces A2 muestra la fecha de Hoy. Luego digita un valor en B2, este valor solo se escribe una vez al ingresar el primer dato en C2. Luego el usuario digita un valor en E2 y da clic a botón Run que calcula valores en D2 y F2, pero, muestra en B3 muestra el valor de B2 + 1, que no debe ocurrir. El botón Run, también, debe mostrar en la fila 5 (no en la 4) los totales de las columnas C,D,E y F. Así, cada ves que se digita un valor en C la fila con los totales se va incrementado en 1 hacia abajo. La Fila de Totales también debe mostar…
-
0
Reacciones de usuarios
- 0 respuestas
- 673 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.