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?
8686 temas en este foro
- 
				
				Estimados amigos. Me surge una duda, existe una forma de saber si se ha deseleccionado un Item de un ListBox ¿? Es decir, si tengo el primer item de un ListBox seleccionado, y lo destildo, hay manera de registrar esta acción para poder ejecutar una macro ¿? Agradecido de antemano por vuestra ayuda. - 
									
0Reacciones de usuarios 
- 9 respuestas
- 3.3k visitas
 
- 
									
- 
				
				Hola Masters, Soy nuevo en este foro y primero que nada los quiero felicitar por que ayudan muchísimo a las personas que vamos comenzando en este mundo de excel avanzado. Estoy construyendo una interfaz tomando como base algunos ejemplos que han subido al foro pero me he atorado en querer editar datos de mi listbox y que se actualice en la base de datos al dar clic en el botón "Guardar", espero que me puedan ayudar, les dejo mi excel. Saludos a todos y de nuevo GRACIAS!! Matriz KPI´s OK.xlsm - 
									
0Reacciones de usuarios 
- 10 respuestas
- 1.9k visitas
 
- 
									
- 
				
				Buenos días, Soy muy nueva en el mundo de la programación VBA, y necesitaría ayuda en una macro que estoy haciendo, los datos el usuario los introducirá a traves de un formulario, la cuestión es que quiero que no deje poner introducir fechas anteriores al día de hoy, estoy probando con el siguiente código If Cells(ultimafila + 1, 13) <= Date Then 'No se puede poner fechas anteriores a hoy MsgBox "La fecha es anterior a hoy" Exit Sub Pero me sigue añadiendo la información. ¿Podéis indicarme cual es el error?Gracias - 
									
0Reacciones de usuarios 
- 4 respuestas
- 837 visitas
 
- 
									
- 
				
				Hi Everyone My new problem is this: On an Excel sheet in Column (C) 1) I would like that every time I enter a word like ("btp fut") or write ("btp ital") the letter (L) should appear in Column (P) 2) While If in Column (D) I enter a Date less than 5 days compared to today's date We will have to create the lettara (D) in the column (P) 3) If in Column (I) the Writing ("change balance") is shown and in Column (J) it does not contain (0), the Letters (CS) in column (P) should appear 4) If in column (K) I write the word ("square *") Write the letter (Q) in Column (P) Let's say I don't expect you to do all the work for me But that you help me … - 
									
0Reacciones de usuarios 
- 5 respuestas
- 1.7k visitas
 
- 
									
- 
				
				Buenos días; Hoy necesito ayudaexcel ? Adjunto una macro que envía por mail tabla en el cuerpo del mensaje de forma automática si necesidad de abrir el outlook. En la hoja excel tengo datos de facturas con vencimientos y lo que no se como hacer es que la macro valore las facturas cuyo vencimiento se haya cumplido y las envíe por mail. En dicha hoja estarán los vencimientos de varios clientes y solo debe enviar las facturas vencidas de todos los clientes a cada mail. -Adjunto macro explicativa. Saludos a todos y a ver si se logra entender bien MAlertaVencimiento(e).xlsm - 
									
0Reacciones de usuarios 
- 0 respuestas
- 1.1k visitas
 
- 
									
- 
				
				buen dia en el archivo adjunto se organiza en cada hoja l ainformacion del producto entrada salida y existencia con formulas pero tengo problemas ya que el archivo que manejo es de mas de 30 productos y mucha informacion por lo cual aveces se me bloquea el excel. por esta razon busco ayuda para pasarlo a macros gracias EJEMPLO DE CAPTURA Y ORDEN DE KARDEX.xlsx - 
									
0Reacciones de usuarios 
- 1 respuesta
- 2.3k visitas
 
- 
									
- 
				
				Hola, buenos dias Tengo un codigo el cual pido que me copie de una hoja llamada SOLICITUD_DE_RMA´S del rango B28:J37, lo copiara a una hoja concentradora llamada CTRL_RECTIFIC iniciando en B4 y luego pase a la siguiente linea par seguir agregando mas , pero me marca un error, mi codigo es el siguiente: Agradeceria muchisimo su valioso tiempo y apoyo, ya que no logro dar con el error............... saludos amigos SUB COPY_DAT() ' Dim strTitulo As String Dim Continuar As String Dim TransRowRng As Range Dim NewRows As Long 'te cambié esto porque a medida que crezca el Integer no te va a servir Dim IColum, J As Integer ' strTitulo = "RECTIFICADORES - CONTROL D… - 
									
0Reacciones de usuarios 
- 4 respuestas
- 690 visitas
 
- 
									
- 
				
				Desarrolle un sistema en PHP y MySQL para un negocio de audiocar. el caso es que ya habia deesarrollado sistemas para otro tipo de negocios como un lubricentro, y siempre los datos de los articulos(lista de precios), de los provedores vienen en archivos de excel. Aunque siempre en tablas comunes (con registros horizontales.). Pero este comercio tiene o le en via su provedor un excel como se ve en la imagen(El archivo pesa 40Mb): Y el caso es que necesito cargar esos datos en la base de datos. Como dije anteriormente teniendo una tabla comun yo lo paso directo con cualquier gestor. He probado transponer copiando y pegando el contenido pero me que… - 
									
0Reacciones de usuarios 
- 12 respuestas
- 1.9k visitas
 
- 
									
- 
				
				Hola compañeros, Tengo un módulo de login que me mantiene ocultas las hojas del libro, siempre y cuando el usuario no se haya identificado previamente. El caso es que cuando abro el libro en otro equipo (evento Workbook_Open > Abrir FormularioDeAcceso), me aparece el típico mensaje de "Habilitar las macros". El problema es que YO NO QUIERO QUE EL USUARIO PUEDA VISUALIZAR EL CONTENIDO DE ESAS HOJAS SI NO ESTÁ LOGUEADO. Y claro... Simplemente, con cerrar el mensaje de habilitar las macros y un click derecho "Mostrar hojas" es suficiente para visualizar el contenido de las hojas, sin necesidad de tener que loguearse. Por eso mi pregunta es: ¿Sabéi… - 
									
0Reacciones de usuarios 
- 4 respuestas
- 1.4k visitas
- 1 seguidor
 
- 
									
- 
				
				Hola a todos, Quiero usar la variable ( .List ) en mi macro pero VBA pare ser que no la encuentra como si no existiera. No entiendo nada. Os adjunto las capturas de pantalla. Como podéis ver en la lista desplegable de VBA no aparece esta variable que acabo de escribir. Pero he seguido escribiendo el código a mano, esperando que me saltara algún error o que se pusiera en rojo el código ( como cuando lo has puesto mal ) pero no es el caso parece ser que está bien aparentemente. Pero cuando ejecuto la macro me salta ese error. Creo que porque no reconoce la variable .List Creo que no he cometido errores en e… - 
									
0Reacciones de usuarios 
- 8 respuestas
- 2.9k visitas
 
- 
									
- 
				
				hola! estoy en búsqueda de separar celdas en filas de una base gigante, para eso daré un ejemplo: según la celda de la columna CENTRO necesito que me separe en filas las veces que aparezca una coma... quedando así: alguna idea???? gracias!! - 
									
0Reacciones de usuarios 
- 3 respuestas
- 1.1k visitas
 
- 
									
- 
				
				Buenas tardes y agradezco el tiempo de quienes puedan ayudarme, veo que ya hay soluciones a macros las cuales copia el contenido de varios libros y los pone en uno solo en la hoja1, sin embargo quisiera saber si se puede lo siguiente: tengo tres libros con cierto número de hojas, el 1° tiene las hojas a,b,c, el 2° tiene c,d,e, y el 3° tiene las hojas f,g,h, a partir de aquí quisiera saber si se puede lo siguiente, al momento de ejecutar la macro me cree un libro con las hojas de todos los libros anterios pero si en un dado caso como es la hoja "c" que hay en el libro 1 y 2 se combine mientras que los demás solo se almacene es decir al finalizar la macro debe quedar un lib… - 
									
0Reacciones de usuarios 
- 0 respuestas
- 910 visitas
 
- 
									
- 
				
				Hola amigos. En una hoja con AutoFiltro quiero usar una macro para borrar una o varias selecciones de filtrado de forma que restablezca la totalidad de la tabla. He probado con la siguiente instrucción: ActiveSheet.ListObjects("datos").Range.AutoFilter Cumple con la función de borrar la selección y restablecer la tabla pero quita el modo de Autofiltro, lo cual no interesa. ¿Alguien me puede ayudar con otra opción que permita borrar la selección manteniendo el modo AutoFiltro? Gracias. ejemplo.xls - 
									
0Reacciones de usuarios 
- 2 respuestas
- 1.4k visitas
 
- 
									
- 
				
				Buenas tardes recurro nuevamente a su apoyo, tengo una lista de asistentes por fecha (Hoja ASISTENCIA) lo que la macro hace, es Eliminar varios registros a la vez, hasta allí todo bien El problema esta en que los asistentes se repiten sus datos (nombre, código, etc), lo que cambia es la fecha de asistencia, entonces al Eliminar, me elimina los registros que encuentra primero Lo que deseo es que me elimine los registros seleccionados pero diferenciando la fecha de asistencia. asi mismo que con el boton modificar me permita hacer modificaciones a varios registros a la vez en el campo Fecha Asistencia Muchas Gracias por sus respuestas. … - 
									
0Reacciones de usuarios 
- 6 respuestas
- 1.3k visitas
 
- 
									
- 
				
				Hola amigos tengo mi reporte que agregue activeprinter.show que me muestra la caja con las impresoras en red el cual al momento de imprimir lo hace, el problema es que cuando doy cancelar no lo hace y me manda la impresión, en el adjunto les detallo mas el problema que tengo es lo ultimo que me falta y solo es una parte de todo el sistema Se les agradecería cualquier ayuda Gracias... Formato Final.xlsm - 
									
0Reacciones de usuarios 
- 2 respuestas
- 857 visitas
 
- 
									
- 
				
				Buenos días a todos; -En el archivo que subo tiene en la hoja "Arqueo y Ventas" una macro que me muestra al hacer clic con el botón derecho del mouse un menú personalizado. He configurado de forma que si la persona que utilice la macro no tiene privilegios de administrador no pueda acceder a dicho menú. Si lo intenta aparece un formulario donde se debe introducir la contraseña correcta que estableció el administrador. Consulta: Como puedo hacer para que una vez logueado me actualice el menú contextual sin necesidad de que tenga que ir saltando de una hoja a otra. Dejo enlace de un video explicativo: Video Saludos. JExcel.xlsm - 
									
0Reacciones de usuarios 
- 1 respuesta
- 1.3k visitas
 
- 
									
- 
				
				Hola a todos, Tengo un problema a la hora de renumerar asientos de contabilidad en excel. Copio listado para que se vea más fácil ademas de explicarlo. Cada asiento tiene un número de documento, y cada asiento tiene varias líneas, que están numeradas a partir del 1. Si elimino algunas de estas líneas, necesito que la numeración se haga de nuevo. Por ejemplo, el asiento 20000 tiene 5 lineas, numeradas del 1 al 5. Si elimino la línea 4, necesito que el resto de lineas se numeren del 1 al 4. Veis posible hacerlo con fórmulas de excel, o sería necesaria una macro? En el ejemplo, si elimino la linea 2 del asiento 21003434, necesitaría que los números de línea se nu… - 
									
0Reacciones de usuarios 
- 1 respuesta
- 670 visitas
 
- 
									
- 
				
				buenos días me vendría muy bien la ayuda de alguien , para crear un macro que recorra toda una fila , en la que cada celda de esa fila, tiene una fecha (año completo). macro que me encuentre una fecha determinada, ej.25/05/2021 y que yo introduzco en userform. Mil gracias un saludo a todos. Fernando Medina - 
									
0Reacciones de usuarios 
- 2 respuestas
- 1.1k 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… - 
									
0Reacciones de usuarios 
- 4 respuestas
- 5k visitas
 
- 
									
- 
				
				buenos días, espero que todos se encuentren bien en estos tiempos de pandemia actualmente estoy investigando como poder realizar lo siguiente, tengo varias celdas con texto, en las cuales debo ajustar el tamaño del texto al tamaño de la celda, las celdas pueden estar concatenadas o no, con diferentes tamaños, estoy tratando de buscar la forma de hacerlo de manera masiva, ya que básicamente debo realizar esta acción cientos de veces, por otra parte también agregar un marco solo a las celdas que contienen texto espero se pueda entender mi duda desde ya muchas gracias - 
									
0Reacciones de usuarios 
- 4 respuestas
- 1.7k visitas
 
- 
									
- 
				
				Cómo hacer que si una celda esta vacía que se visualize un texto pero sn macros. Gracias - 
									
0Reacciones de usuarios 
- 15 respuestas
- 5.4k visitas
 
- 
									
- 
				
				Gracias maestros por la ayuda que brindan. Como podría hacer una macro que ponga un texto dependiendo el contenido de una celda. Me explico si en la celda A1 esta cualquier información que en el rango B1:F1 asigne el texto CANCELADO caso contrario que deje en blanco y asi sucesivameente si esta en la celda A2 igual que ponga B2:F2 asigne el texto CANCELADO caso contrario que deje en blanco lo mismo en la A3, A4 hasta la A10. Gracias por vuestra ayuda. - 
									
0Reacciones de usuarios 
- 1 respuesta
- 570 visitas
 
- 
									
- 
				
				Hola, tengo un problema al momento de ejecutar una macro que cree un tabla dinamica, en diferentes computadoras. el codigo es el siguiente: Sub Macro1() Dim WSD As Excel.Worksheet Dim WSI As Excel.Worksheet Dim PTCache As PivotCache Dim PT As PivotTable Dim PRange As Range Dim FinalRow As Long, FinalCol As Long Set WSD = Worksheets("Origen") Set WSI = Worksheets("Indicadores") ' Eliminar cada Tabla Dinamica existente en la Hoja---- For Each PT In WSI.PivotTables PT.TableRange2.Clear Next PT '========================================================================================… - 
									
0Reacciones de usuarios 
- 1 respuesta
- 1.4k visitas
 
- 
									
- 
				
				Buenos dias expertos, necesito una ayuda cuando pulso agregar datos al listbox con el boton agregar, lo que sucede es que el formulario de pedidos lleno los datos del producto luego de eso escojo una opcion en el los combobox de tipo de empaque y presentacion y pulso el boton agregar los datos antes mencionados debe listarse en el listbox pero me sale error en la columna 10, me pueden dar una ayuda sobre ese tema por favor. Muchas gracias de antemano por valioso tiempo. Adjunto el archivo. Proyecto Jomarus.xlsm - 
									
0Reacciones de usuarios 
- 4 respuestas
- 665 visitas
 
- 
									
- 
				
				Estimada(o) Junto con saludar y deseando que todos esten bien junto a los suyos pasa a exponer mi consulta (sencilla quizas pero no logro dar con la solución) Tengo un libro (caso ejemplo en adjunto) con algunas hojas, quiero copiar desde la Hoja1, cada columna o rango completo de celdas; a la Hoja2, a partir de una celda que yo decida como en el ejemplo (me refiero a que no necesariamente la misma ubicación que tiene en Hoja1). Worksheets("Cubo").Columns(colu).Copy Destination:=Worksheets(Mid(cractual, 1, 18)).Columns(columnacr) este codigo me funciona pero me copia la columna completa, pero lo que esté en cractual en la misma columna (celdas a… - 
									
0Reacciones de usuarios 
- 3 respuestas
- 817 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.
	 
 
			
		
		 
	 
	 
	 
	 
	 
	 
	