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
-
hola, excelentísimas personas de este magno Foro estoy recién aprendiendo a usar BVA y estoy tratando de hacer una macros que me permita hacer varios gráficos con su pestaña correspondiente, y que las pestañas queden nombradas con el valor de referencia de la celda que contiene el nombre, para esto grabé la macros realizando uno de los gráficos con el cual estoy modificando, el plan era cambiar la direccionamiento de que trae por defecto ej. "=Hoja1!$Z$1" para usar los objetos Range y celda, conseguí que reconociera el rango pero cuando profundizo con las cells me tirar error de objeto, les pido que me digan en que me estoy equivocando, para poder seguir avanzando por fa…
-
0
Reacciones de usuarios
- 0 respuestas
- 2k visitas
-
-
Buenas tardes solicito de nuevo su apoyo. En este caso tengo el siguiente problema si en la columna ("f") esta el valor "0", verificar si el numero de la columna ("d") de la misma fila tiene en otra fila un numero mayor o igual a "1", si es así sustituir el valor "0" de la columna ("f") por el valor "99" y no tengo ni idea de como hacerlo. DISCUL UUSTEDES, ADJUNTO OTRO ARCHIVO ESPERANDO SER UN POCO MAS CLARO. COMO LES COMENTABA NO SE COMO ESTIPULAR ESTA CONDICION, SE LOS PUSE UN POQUITO MAS GRAFICO. LES AGRADESCO MUCHO SU APOYO. SALUDOS CORIDIALES. EJMPLO 112.xls
-
0
Reacciones de usuarios
- 12 respuestas
- 2k visitas
-
-
Buenas No se si es cosa del ejecutable qeu quiero abrir o si es del codigo que estoy utilizando para llamar a ese .exe Pongo en situación, el programa al abrirse por defecto guarda lo que haga dentro de su ruta por defecto en la carpeta "Nompre_prograama\Descargas", esto lo hace bien desde un acceso directo a ese exe o desde un .bat al que le digo que lo ejecute, guarda perfectamente lo que hace. Ahora bien si creo un boton en un userform al cual al pulsar llamo a ese exe con este código Private Sub Llamar_Exe_programa_Click() Shell "E:\Carpeta_progarama\Nombre Programa.exe", 9 End Sub me lo abre, me da la sensación que lo abre no de una forma no…
-
0
Reacciones de usuarios
- 6 respuestas
- 2k visitas
- 3 seguidores
-
-
Buenas a todos amigos, De nuevo por aquí y como siempre para dar dolores de cabeza jejeje. Os cuento el asunto. Estoy intentando realizar una macro que me cree una conexión con datos externos web para así importar unas tablas, hasta ahí no hay muchos problemas. La problemática es la siguiente, necesito pasarle a la web de donde obtengo los datos una fecha, para que se modifique un control de fecha que hay en la dirección web y así poder obtener los datos de las tablas correspondientes a esa fecha. Además, por si no fuera poco, he de conseguir también de algún modo que seleccione cierto valor de un control de lista desplegable de dicha página. Por ejemplo, si deseo obt…
-
0
Reacciones de usuarios
- 1 respuesta
- 2k visitas
-
-
Buenas tardes amigos, un gusto saludarlos de nuevo! Fíjense que ahorita estoy trabajando con una hoja de excel donde necesito copiar uno o varios criterios y pasarlos en otra hoja, para no utilizar el autofiltro de excel y no copiar por partes, se me ocurrio realizar esos filtros desde un Listbox, a continuación explico. 1. Para empezar necesito que en la columna G de la hoja 1, cargue en listbox los datos pero que no se repitan (Folios únicos) y despues (Cabe mencionar que los datos de esa hoja son variables, pueden ser 1 o hasta 10,000 registros). 2. que me de la opción de seleccionar cual quiero copiar y pasar en la hoja de resultados (Tipo multiselect).…
-
0
Reacciones de usuarios
- 3 respuestas
- 2k visitas
- 1 seguidor
-
-
Hola amigos, muy buenas tardes. Excel 2003 – SP3 El maestro Macro-Antonio, me ayudó hace algunos días a solucionar un problema que tenía, y para ello, me creó este código que me funciona de maravillas. Private Sub CMBPorcentaje_Click() On Error Resume Next pct = InputBox("Introduce el %", , 0) For Each celda In Selection celda.Value = Round(celda.Value * (1 + pct / 100), 2) Next End Sub[/CODE] Como se puede comprobar, este código lo que hace es sumar un tanto por ciento optativo a las celdas seleccionadas. Bien, ahora me he dado cuenta de un detalle, es necesario que ese tanto por ciento se muestre. Con esto, conseguimos saber qué cantidades han sido i…
-
0
Reacciones de usuarios
- 15 respuestas
- 2k visitas
-
-
Amigos: Tengo varios Archivos que copio y pego a una Tabla General. Estos archivos vienen en diferentes formatos, y uso con bastante frecuencia la opción Pegado Especial. Se me ocurrió crear una macro para pegar, pero me sale error. Agradeceré ayudarme a corregir la macro. Sldos, Karin. DATA.rar
-
0
Reacciones de usuarios
- 6 respuestas
- 2k visitas
-
-
saludos nuevamente desde México estoy trabajando con una relacion, la cual quiero copiar en otra hoja la cual tiene unformato especifico y que lo realice la cantidad de meses que se establecen no tengo la menor idea de como empezar por lo que solicito su ayuda, por lo que adjunto el archivo de antemano muchas gracias CONCENTRADO DE SIMULACROS.xls
-
0
Reacciones de usuarios
- 5 respuestas
- 2k visitas
-
-
Hola, siento volver a preguntar, tenia que haber preguntado esto primero, pero he tentado buscar una solución de porque con cada cambio que realizo tiene que pasar por esta función, pero sigo sin contrar una solución. Os cuento, he puesto una función personalizada para que realice una búsqueda por determinadas hojas y muestre su resultado, aunque tengo que refinarla un poco más porque me está mostrando unos resultados diferentes, como al pasar las horas que no sé por qué tiene que cambiar los valores. El caso es que, si se pone un punto de interrupción en la función, cada vez que se realice un cambio, vemos que pasa por esta función, pero ya no solo en la celda que…
-
0
Reacciones de usuarios
- 6 respuestas
- 2k visitas
-
-
Buenas noches, por motivos de trabajo estoy intentando utilizar excel para abrir toda una serie de archivos para mi trabajo. Aquí adjunto un zip con una hoja excel en la que se incluye una macro para abrir un documento de word. Creo que es correcta pero no sé si falla alguna linea de codigo. Me podeis ayudar? Tb quería plantear la duda de como abrir accesos directos de aplicaciones con introducción de usuario y contraseña de modo que se pueda programar en vba la introduccion de estos datos de forma automática, si es posible. Espero vuestra ayuda. Gracias abrir_documentos_word.zip
-
0
Reacciones de usuarios
- 0 respuestas
- 2k visitas
-
-
Hola amig@s! Estoy intentado crear una macro que inserte una imagen en Excel pero que antes la comprima. Le he dado muchas vueltas a este tema pero no hay manera, lo único que he conseguido es lanzar la ventana de compresión de imágenes y pasarle los valores para que la comprima, pero esto a veces funciona y otras veces no... Set octl = Application.CommandBars.FindControl(ID:=6382) Application.SendKeys "%w~~" No se si hago algo mal... o hay otra forma mejor. Un saludo, gracias de antemano
-
0
Reacciones de usuarios
- 1 respuesta
- 2k visitas
-
-
Hola a todos me gustaría automatizar una función con un formulario, de tal manera que cuando le meta un variable, me la introduzca en una fórmula y la pegue en una celda en particular. La variable será una fecha, para que haga la siguiente fórmula: =SUMAR.SI.CONJUNTO(DIARIO[HORAS VUELO];DIARIO[FECHA];"<="&FECHA(AÑO($A$2);MES($A$2);DIA($A$2));DIARIO[AVION];73) en negritas y subrayado he puesto lo que la variable modificará. Esta variable la meteré en un textbox de un formulario. La fecha que meta en este textbox será la que busque la fórmula que acabo de poner... Para cada avión le pondré una fórmula similar, pero c…
-
0
Reacciones de usuarios
- 7 respuestas
- 2k visitas
-
-
Hola. Tengo el siguiente problema. Tengo una macro que abre un formulario y me permite elegir distintas impresoras para imprimir una hoja. Hasta ahí todo bien. El tema es que cuando elijo la impresora XXX Excel queda en la impresión rápida (el icono que está en el menú de arriba) con esa impresora y no con la que Windows tiene determinada. Esto queda aún si abro un nuevo libro. Lo que yo quiero es que de alguna forma la macro haga que la impresora rápida o impresora por defecto de excel vuelva a hacer la predeterminada por Windows que a su vez es una de las impresoras de la lista que tengo para elegir. He probado con el siguiente código al final de la macro pero no func…
-
0
Reacciones de usuarios
- 0 respuestas
- 2k visitas
-
-
Buenas tardes, estoy teniendo un pequeño problema con una macro; resulta que tengo una hoja que a traves de un botón actualiza una tabla proveniente de internet, y una vez que actualiza, realiza operaciones (remplaza "." por "," para que me lo pueda leer como número) Pero resulta que al ejecutarla me he dado cuenta que primero realiza las operaciones y por ultimo actualiza, cuando en realidad el orden es al revés, porque puede ser? Alguno que me oriente porque me desconcertó el problema. El código que uso es : ActiveWorkbook.RefreshAll Dim i, f, final As Integer 'todo Sheets("Todo").Activate For i = 2 To 10000 If Cells(i, 1) = "" Then final = i - 1 Exit For…
-
0
Reacciones de usuarios
- 0 respuestas
- 2k visitas
-
-
Buen Dia A todos Necesito crear una macro para transponer datos que tengo en filas a columnas pero manteniendo el dato que tengo en la primera celda, esta es la data [TABLE=width: 50] [TR] [TD]1[/TD] [TD]A[/TD] [TD]B[/TD] [TD]C[/TD] [TD]D[/TD] [TD]E[/TD] [TD]F[/TD] [TD]G[/TD] [/TR] [TR] [TD]2[/TD] [TD][/TD] [TD][/TD] [TD]local1[/TD] [TD]local2[/TD] [TD]local3[/TD] [TD]local4[/TD] [TD]local5[/TD] [/TR] [TR] [TD]3[/TD] [TD]EAN[/TD] [TD]Descripcion[/TD] [TD]id_3[/TD] [TD]id_4[/TD] [TD]id_5[/TD] [TD]id_6[/TD] [TD]id_7[/TD] [/TR] [TR] [TD]4[/TD] [TD]11111[/TD] [TD]camisa xl[/TD] [TD]x[/TD] [TD][/TD] [TD]x[/TD] [TD][/TD] [TD]x[/TD] [/…
-
0
Reacciones de usuarios
- 1 respuesta
- 2k visitas
-
-
Tengo un formulario form aplicativo excel , que se habre ejecuta el formregistration y pide algunos datos para registrar un usuario lo tipico , luego se da click en camera y se habre otro userform que muestra la webcam en vivo para luego darle en capture y tomar la foto al usuario que se carga en el userformregistration como vista previa , y luego regresar y darle click en salve al formulario userformregistration, donde la imagen del usuario se guarda en una carpeta donde se tiene este excel form, guardado y los datos se guardan en las celdas del libro sheets1 junto con un dato de la foto en letras, en la celda GAMBAR,, necesito que este aplicativo me deje tomar 2 …
-
0
Reacciones de usuarios
- 0 respuestas
- 1.9k visitas
-
-
Buenas tardes. Estoy trabajando con una base de datos muy grande en la cual tengo numerosos casos en los que el nombre de filas contiguas sólo se diferencia por la existencia de un número cardinal o romano. Mi trabajo consiste en agrupar las mencionadas filas y sumar el contenido de una de sus columnas. Os adjunto un ejemplo en el que creo que se explica con claridad. Muchas gracias de antemano y perdón por mi ignorancia en este tipo de temas. Ejemplo.xlsx
-
0
Reacciones de usuarios
- 10 respuestas
- 1.9k visitas
-
-
Macro para convertir en número sólo en una columna Buenas a todos: Ante todo felicitar por tan excelente foro que contribuye mucho para usuarios como yo, ávidos de aprender cada día. Tengo este código que hace que desde la hoja “Formulario_pantalla”copie algunas celdas y rango a otra hoja llamada “Kardex”. En realidad lo hace todo bien a excepción del copiado de la celda AJ5 (=TEXTO(AF3,"000000") de la primera hoja mencionada a la otra hoja a partir de la celda A4 donde aparece el icono de advertencia “El número de esta celda tiene formato de texto o va precedido por un apóstrofo” y luego manualmente tengo que convertir en número. Entonces por favor necesito el código…
-
0
Reacciones de usuarios
- 9 respuestas
- 1.9k visitas
-
-
Que tal, rápidamente les agradezco el apoyo a todos los que lo necesitamos, en verdad es una super ayuda. Lo que necesito es para pasar todos los datos contenidos en una fila que contengan una palabra determinada. por ejemplo: tengo varios productos que se pagaron de forma diferente, en una columna tengo especificado su forma de pago. lo que quiero es especificar en algún lado la palabra "efectivo" o "cheque" (forma de pago) y que me pase toda la información de las filas que contengan pago en "efectivo". Lo hice mediante una formula de condición "si" pero me deja filas en blanco. me dijeron que seria mejor con una macro. El detalle es que no tengo especificado el …
-
0
Reacciones de usuarios
- 4 respuestas
- 1.9k visitas
-
-
Tengo escrita una función en el libro PERSONAL.XLSB (excel 2010) además de otras macros. Las macros las tengo disponibles en cualquier momento,puedo seleccionarlas desde la ventana MACRO y ejecutarlas sin problemas; sin embargo la función mencionada cuando quiero utilizarla desde una celda me da error (nombre de función desconocido). He probado a copiar esta misma función en un módulo del libro que tengo abierto y así si que puedo utilizarla sin problemas, pero me gustaría tenerla disponible sin tener que copiarla en todos los libros donde quiero disponer de ella y para ello la solución sería tenerla en PERSONAL.XLSB. Cual puede ser el problema ? Un saludo.
-
0
Reacciones de usuarios
- 1 respuesta
- 1.9k visitas
-
-
Buenas, Estoy intentando realizar un macros que me lea los registros que cumplan una condición y me los pegue en otra hoja en la celda que le marco. He probado con esta macro, pero no me lo hace correcto me da error Sub Copiar_datos()
-
0
Reacciones de usuarios
- 13 respuestas
- 1.9k visitas
-
-
buenas tardes a todos los compañerossss... les agradezco de antemano su colaboración e intención con mi duda... tengo un documento de excel y vba (programa) que al ejecutarlo me abre inmediatamente el primer formulario, donde se debe escribir un nombre de usuario y contraseña.... mi pregunta es la siguiente... hay alguna forma de poder incluir en este formulario o en el documente en gral, una macro o aplicacion de tiempo que se ejecute cada 30 días a modo de licencia en programasss...de modo que cada 30 días el programa se bloquee y cambie de contraseña automáticamente....(contraseña que deberé saber yo únicamente) dicho formulario contiene dos textbox (textbox1 =usuar…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.9k visitas
-
-
Buenos días, Quiero copiar datos de ciertas columnas de una tabla del LibroOrigen a un nuevo libro ( LibroDestino) He conseguido crear una macro que funciona cuando están todas las celdas completadas (hoja 2 del archivo adjunto) pero si hay vacío da error (hoja1) Para seleccionar el rango de celdas origen he seleccionado esto: 'Seleccionar rango de celdas origen rngOrigen.Select Set a = Range("K1", Range("K1").End(xlDown)) Set b = Range("L1", Range("L1").End(xlDown)) Set c = Range("O1", Range("O1").End(xlDown)) Set d = Range("P1", Range("P1").End(xlDown)) Set e = Range("Q1", Range("Q1").End(xlDown)) Set f = Range("R1", Range("R1").End…
-
0
Reacciones de usuarios
- 3 respuestas
- 1.9k visitas
-
-
Hola a todos Estoy intentando automatizar un proceso y que los registros que hay en excel exportarlo a SQL espero que los espertos del gripo me puedan ayudar. El archicho que adjunto me funciona cuando es solo un registro en la fila 7, sin embargo requiero: 1 Que me consulte si los datos de la fila B (que peuden ser una o muchas filas con información ), en caso de ya estar el registro en la base de datos que mande la leyenda. 2 Que si los datos de la fila B no existen en la base de datos que exprote todos los datos con el macro ingesarDatos. El archivo adjunto lo he estado trabajando, sin embargo se me han complicado los p…
-
0
Reacciones de usuarios
- 3 respuestas
- 1.9k visitas
- 1 seguidor
-
-
Buenas Necesitaría a partir de un desplegable que debe repetirse en una columna a lo largo de varias filas, poder seleccionar varios elementos que queden separados por comas. He encontrado una forma de hacerlo añadiendo este código al excel, pero necesitaría modificarlo para: 1. Que me permita borrar los valores si me equivoco 2. Que me permita arrastrar a lo largo de las filas, y que lo que arrastre sea el desplegable y no los valores seleccionados en la fila anterior. A ver si me podeis ayudar Gracias! Este es el código: Private Sub Worksheet_Change(ByVal Target As Range) 'UpdatebyExtendoffice20180510 Dim xRgVal As Range Dim …
-
0
Reacciones de usuarios
- 3 respuestas
- 1.9k 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.