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?
8680 temas en este foro
-
Que tal !!! La cuestión es que tengo una base de datos en excel y necesito que la buscar en la tabla un registro, me muestre los datos correspondientes en un formulario que ya creé. Pude programar un botón para limpiar los datos que pudieran estar impresos en los cuadros de texto, y otro botón para salir, lo que no he podido programar es el botón de consultas. Necesito un ejemplo para buscar el registro en base al nombre del empleado. En el archivo de excel tengo 2 hojas y en una de ellas tengo una plantilla que ya hace lo que deseo, pero quiero hacer eso mismo ahora con un formulario. Directorio.zip
-
0
Reacciones de usuarios
- 8 respuestas
- 4.2k visitas
-
-
Hola. Necesito insertar un control MsComm32.ocx en un formulario de VBA de una aplicacion de excel. Tengo una PC con Windows 10 de 64 bits. Ya he registrado la OCX en "SysWow64" sin problema y también incorporé la referencia en la aplicacion. Cuando quiero insertar el control en un formulario de esa aplicación, aparece un aviso que dice: "No se confía en el sujeto para la acción especificada". Si alguien tiene idea de como solucionarlo se lo voy a agradecer. Saludos
-
0
Reacciones de usuarios
- 6 respuestas
- 4.2k visitas
-
-
Hola a todos, queria hacer una consulta, tengo este codigo: Public Sub Worksheet_Selection_Change(ByVal Target As Range) Dim nFilas As Long Dim nFila As Long Dim i As Long nFilas = Cells(Rows.Count, 4).End(xlUp).Row nFila = 1 For i = 11 To nFilas + 11 If Cells(i, 4) = "" Then Cells(i, 27) = "" If Cells(i, 4) <> "" Then Cells(i, 27) = nFila nFila = nFila + 1 End If Next End Sub con ese código numero las filas en el rango deseado, desde la celda 11 hacia abajo las que hayan.. el tema que yo aplico filtro y obvio la cantidad total se reduce de q se 20 aprox.. a 5 filas.. el tema que ese código numero perfecto pero no le im…
-
0
Reacciones de usuarios
- 6 respuestas
- 4.2k visitas
- 1 seguidor
-
-
Hola amigos: Tengo este código que convierte a texto el contenido numérico de la celda A2 en la celda A1, y todo funciona bien el problema es que deseo hacer lo mismo pero dentro del textbox1 ubicado en un formulario que esta en el ejemplo y no logro hacerlo hay alguna manera de hacerlo. adjunto ejemplo. saludos numeros a letras.rar
-
0
Reacciones de usuarios
- 1 respuesta
- 4.2k visitas
-
-
Hola: Quisiera saber si hay alguna manera de conectar excel con access remotamente, intente hacerlo con un macro que supuestamente conecta excel con MYSQL que debe encontrarse en servidor web, pero no logré hacer que me funcione, por lo que quisiera hacerlo entre excel y access y de forma mas "casera" ya que lo que necesito es actualizar precios cuando ando en la calle desde el servidor de la oficina. saludos
-
0
Reacciones de usuarios
- 3 respuestas
- 4.2k visitas
-
-
Amigos, Estoy nuevamente por acá para que me ayuden con un código: Lo que estoy haciendo es enviar un mail de Outlook - en su versión 2010 -, mediante una Macro; ésta Macro envía un correo con un archivo adjunto más un rango de celdas específico. Hasta el momento todo bien, pero al momento de cambiar la propiedad Display por send es donde falla, ya que me envía el archivo adjunto pero no el rango de celdas. Les adjunto el código que estoy utilizando: Sub rangoCeldas() ' Don't forget to copy the function RangetoHTML in the module. ' Working in Office 2000-2010 Dim rng As Range Dim OutApp As Object Dim OutMail As Object Dim Adjunto As Variant …
-
0
Reacciones de usuarios
- 5 respuestas
- 4.2k visitas
-
-
Buenas noches a todos, saludos cordiales, aquí de nuevo solicitando de sus conocimientos. Estoy tratando de armar un Sistema contable, y se va logrando gracias al Ingeniero en Sistemas JSDJSD de este gran foro, saludo maestro. Ya se logró el Inventario, Mayor y Libro Diario. Ahora arme el Balance Comprobación, solo con fórmulas en Excel, jalando las cuentas en el Libro Diario y, en el Balance de comprobación ahí figura todas las cuentas, es decir en el principio están todas las cuentas del BALANCE GENERAL, y en la fila 149 comienza las cuentas del ESTADO DE RESULTADO; A base de eso arme el Estado de Resultado y Balance General con fórmulas muy senci…
-
0
Reacciones de usuarios
- 36 respuestas
- 4.2k visitas
- 3 seguidores
-
-
Que tal compañeros buen dia, Me gustaria saber si me pudieran ayudar con esta consulta, ya probe el query en SQL Server y funciona de manera correcta ejecutandolo desde ahi, pero cuando intento hacerlo desde vba no hace nada, osea pareciera que el codigo se ejecuto correctamente pero en realidad no hace nada, esto si quito las lineas de: adoRs.Close adoCn.Close adoCn.ConnectionString = "" Pero si dejo esas lineas me sale el siguiente error: "Operation is not allowed when the object is closed" Si alguien me pudiera decir como solucionar este problema, lo he intentado de diferentes formas y de diferentes formas de hacer la conexion y algu…
-
0
Reacciones de usuarios
- 1 respuesta
- 4.2k visitas
-
-
Buenas tardes a todos, ¿Alguien sabría como invertir los valores de una columna? Tengo un rango que va desde A3 hasta A50 y quisiera encontrar una macro para invertir los valores y ubicarlos en el mismo rango, pero al revés..... es decir; el valor de A3 debe ser el que tiene A50, el de A4 debe ser el de A49 el de A5 debe ser el de A48 ....y así hasta llegar la final, que el de A50 sea el de A3 ¿alguna idea? Gracias por adelantado.....
-
0
Reacciones de usuarios
- 8 respuestas
- 4.2k visitas
-
-
Hola, buenos días a todos; -Soy nuevo en este foro, disculpen si me equivoco en algo. -He subido una macro la cual tiene un formulario con una serie de botones de opción. A mi la que mas me interesa es la que pone "sizable". Si activo esta opción y tiro de un lateral de la ventana pues el formulario anchea o encoge según mueva el ratón. Esta opción me gustaría implementarla al segundo formulario que pone "frm_Ajustable". Este formulario está vacio no tiene ninguna macro para no entorpecer el trabajo. Si tienen alguna duda no duden en comunicarmelo. Lo dicho buenos días y semana a todos. Redimensionar.xls
-
0
Reacciones de usuarios
- 16 respuestas
- 4.1k visitas
- 1 seguidor
-
-
Tengo una celda D5 cuya formula es =C1. En la Celda C1 introduzco el texto y quiero que en D5 aparezca lo mismo pero con el texto estirado, o sea que se ajuste al tamaño de la celda, ya sea en ancho como en alto y no haya margenes. El objetivo de esto es que en C2 la fuente sea la de Codigo de Barras, pero quiero que siempre los codigos tengan el mismo tamaño. Adjunto archivo, el cual tiene la fuente especifica de codigo de barras, pero creo que lograndolo con cualquier fuente es lo mismo. Aclaro que esta forma de hacerlo es la que se me ocurrió, si existe otra forma dentro de excel para hacerlo, sientanse libres de modificar todo. Gracias por la ayuda.- EJEMPLO.xl…
-
0
Reacciones de usuarios
- 3 respuestas
- 4.1k visitas
-
-
Buenos días, Necesito ayuda para evitar borrar una formula en la ficha que tengo. En las celdas "I6:K6" hay una formula. Al ejecutar la macro BUSCAR, quiero que me devuelva el dato grabado en la hoja BD, pero NO quiero que me bore la formula en cuanto me trae el dato. La formula quiero que se mantenga y se aplique solo para los casos "PRESUPUESTO / CONFIRMACIÓN". La parte de la macro "BUSCAR" que es '[I6] = .Cells(encontrado.Row, "E") 'Fecha de confirmación / cancelación para estas celdas esta desactivada. Adjunto el documento a donde he dejado el comentario sobre problema que tengo. Saludos, EVITAR BORAR FORMULA 15.12.2019.xlsm
-
0
Reacciones de usuarios
- 7 respuestas
- 4.1k visitas
- 1 seguidor
-
-
Estimados, alguien me podría dar una mano con este tema? necesito poder contar celdas de colores, los cuales cambian en función del formato condicional, estuve buscando por la web pero ninguna de ls publicaciones me fue de utilidad. Gracias. Saludos.
-
0
Reacciones de usuarios
- 9 respuestas
- 4.1k visitas
-
-
Hola! Mi problema es el siguiente: Necesito restar un X% que está en un textbox a 100% y eso colocarlo en una celda. Mi textbox se llama Prop. El contenido de este textbox está en formato porcentaje. Los contenidos en las celdas los coloco de la siguiente manera: Hoja05.Cells(x, X) = ......................... Lo que yo hago pero me da error es lo siguiente: Hoja05.Cells(x, X) = 100 - Prop.Value Por supuesto que, ademas necesito que una vez hecha la resta, el resultado se coloque en la celda con formato porcentaje. Muchas gracias.
-
0
Reacciones de usuarios
- 7 respuestas
- 4.1k visitas
-
-
Buenas tardes. Queria saber si habra alguna forma de indicarle al userform que se ubique en una posicion especifica. Voy a tratar de ser mas explicito, el userform en este momento se ubica en el centro de la pantalla, mas yo quiero que se ubique en la misma posicion centrada, pero unas lineas mas abajo. Es decir, debajo de la celda 7, pero centrado. Dejo una imagen que vale mas que mil palabras. Agradecido de antemano por vuesta ayuda
-
0
Reacciones de usuarios
- 8 respuestas
- 4.1k visitas
-
-
Estimados, Estoy intentando desarrollar un programa en EXCEL que envie un correo electronico cuando una celda "lea" que se ha conectado algo a un puerto USB. En realidad el proposito es simple... quiero que se envie un correo cuando una celda de EXCEL detecte que se conecto algo via USB. no tengo ni idea de como hacer un macro que coloque un valor a una celda cuando se detecte que se ha conectado algo a un puerto USB. Quedo en espera de su ayuda. Saludos y gracias!
-
Buenas, es una cosa fácil pero se me esta resistiendo, con Application.hWnd saco la de la ventana activa, el excel, y con FindWindow("notepad", vbNullString), la de notepad, pero cuando intento otras que tengo activas como por ejemplo el word no me da nada... alguien me puede indicar como indicar en el findwindow / ex el titulo de la ventana, gracias
-
0
Reacciones de usuarios
- 2 respuestas
- 4.1k visitas
-
-
Necesito cargar imágenes png para formar rostros al encimar las imágenes en controles de tipo imagen en un formulario. Alguien me podría ayudar.
-
0
Reacciones de usuarios
- 1 respuesta
- 4.1k visitas
-
-
Buenas tardes compañero. He encontrado un ejemplo de formulario el cual me gustaría adaptar al mío. Mi pregunta es la siguiente. Cuando generas un registro aleatoriamente empieza a generar desde el número 500, 501, 502...etc ¿En vez de que empiece a generar por números podría empezar a generar letras y números? Me explico, por ejemplo: HT-001, HT-002, HT-003.... Muchas gracias siempre por vuestras ayudas y vuestras ideas. Si alguien pudiese ayudarme se lo agradecería, SALUDOS CONSECUTIVO PERSONALIZADO.xlsm
-
0
Reacciones de usuarios
- 8 respuestas
- 4.1k visitas
- 1 seguidor
-
-
Buenos días, Es mi primera intervención en el foro, soy un usuario de excel bastante avanzado pero es ahora cuando estoy descubriendo las amplias posibilidades que ofrece VBA, y en esto me estáis ayudando un montón, así que gracias! Mi duda es: quiero hacer una macro que mediante un popup (userform) me permita desbloquear la hoja introduciendo la contraseña, y luego siga haciendo cosas con otros pupups que salen. Hasta aquí todo ok, el problema está cuando se mete la contraseña incorrecta, que se rompe la macro. Cómo podría hacer para que si se introduce una contraseña que no es correcta, entre en un loop solicitando que se introduzca la contraseña correcta, hasta que s…
-
0
Reacciones de usuarios
- 10 respuestas
- 4.1k visitas
-
-
Estimados, buenas tardes. Tengo una Macro que ubica a una persona en un cuadro o matriz según los siguientes datos. a) Nivel de una persona (puede ir del 2 al 7) Desempeño (NS, NM, CP, SA, EX) c) Estrato (puede ir del 2 al 5) d) Sub-estrato (puede ir del 1 al 3) e) Propósito y Balance emocional (puede ir del 1 al 3) Al ejecutar la macro me funciona bien, solo que deseo generar algo y no estoy pudiendo lograrlo. Lo que quiero es que según sea el valor del "Propósito y Balance emocional" de una persona (1, 2 o 3) pinte el texto de esa persona de un color determinado. Si es 1 (rojo), si es 2 (anaranjado) y finalmente si es 3 (verde) Adjunto el archivo …
-
0
Reacciones de usuarios
- 13 respuestas
- 4.1k visitas
-
-
Buenas noches, Consiste en lo siguiente: Este archivo tiene 2 botones, uno es para agregar nombres y datos de las personas en las celdas y el otro es para consultar todos los datos mediante el nombre de la persona y que esta informacion salga en textbox y listbox pero el error proviene cuando busco un nombre y un "código",( así se llama en el formulario pero en realidad tiene términos como referencia para buscar) que no existe apareciendome así un diálogo mostrando el error "desbordamiento". La posible solución que planteo es que al momento que coloque un nombre y el código que no existe en las celdas cumpla la función de mostrarme un mensaje que diga "No hay pacient…
-
0
Reacciones de usuarios
- 0 respuestas
- 4.1k visitas
-
-
Estimadísimos amigos, este seria mi primer post, luego de meses de sacar soluciones, hoy me veo obligado a molestarlos...les cuento, estoy confeccionando un sistemita de controlde facturas y cotizaciones para el negocio de un amigo, pero al ejecutar una macro, en ocasiones me arroja el error de comando de seleccion multiple, el problema es que incluso al seleccionar solo 1 celda copiada en libro2 y pegarla en libro1 me arroja dicho error...no logro entender el por que de esto...les agradeceria si me pudiesen ayudar con esto. Aprovecho de subir los archivos por si los quieren ver, el problema esta en la Hoja Facturas del libro Formulario en el Boton Ver pagos Formulario…
-
0
Reacciones de usuarios
- 1 respuesta
- 4.1k visitas
-
-
SOY MUY NUEVO EN EXCEL Y NO SE COMO HACER QUE ME FUNCIONE ESTE MACRO EN MAS CELDA APARTE DE H3 EN LA QUE FUNCIONA PERFECTAMENTE, COMO POR EJEMPLO DESDE H3 HAST H20 Option Explicit Dim valor As Long Dim cantidadVeces As Integer Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$H$3" Then cantidadVeces = cantidadVeces + 1 If cantidadVeces > 1 Then Exit Sub End If valor = valor + Sheets("Entradas-salidas").Range("H3").Value Sheets("Entradas-salidas").Range("H3").Value = valor End If End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) valor = 0 cantidadVeces = 0 If Target.Address = "$H$3" Then valor = Sheets("Entrad…
-
0
Reacciones de usuarios
- 4 respuestas
- 4.1k visitas
-
-
Buenas, Estoy haciendo una macro que consiste en lo siguiente: Vaya a una carpeta, abra el primer excel, aplique un RefreshAll, lo guarde y cierre, y pase al siguiente. Estos exceles tienen conexiones de datos externas, que son las que quiero que me actualice, pero no lo hace. Pero si lo hago manualmente (abro excel, le doy en Datos a RefreshAll), sí me funciona. Este es el código que estoy aplicando: Sub AbrirArchivos() 'Paso1: Declarar las variables Dim Archivos As String 'Paso2: especificar una carpeta y el tipo de archivo que buscamos. 'En este caso la carpeta se lla "RFC2" y el tipo de dato es "xslx" Archivos = Dir("C:\Users\Desktop\2. RFC2…
-
0
Reacciones de usuarios
- 2 respuestas
- 4.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 [email protected]
Información adicional: Encontrarás más información en la política de privacidad.