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?
8690 temas en este foro
-
Hola a todos buen día, hace poco termiiné de estudiar un curso rapido de Excel y terminé con exito la primera etapa de un proyecto que quiero implementar, al menos eso creía, resulta que este libro funciona hasta que lo cuelgo en una carpeta y lo uso como libro compartido: Les adjunto el archivo trabajado, lo que quiero lograr es trabajar con un libro compartido sin los errores que me aparecen: 1. No puedo proteger el libro 2. se deshabilita el boton que llama mi Formulario Principal, ubicado en la Hoja2 3. Ocultar y proteger ciertas Hojas. Pueden ingresar con ADMIN y contraseña 12345678. de antemano les agradeceré que me den una …
-
0
Reacciones de usuarios
- 4 respuestas
- 3.5k visitas
-
-
Hola soy nueva y no tengo mucha experiencia, he creado una base de datos con formulario vba y tengo un problema cuando realizo una búsqueda desde el formulario la fecha no ne sale igual que en la hoja de Excel , la fecha es formato txt. El formato que sale en la hoja de excel es el correcto 02/02/2024 , en el buscador del formulario sale 2224 o 224. No se como puedo solucionarlo en la macro. gracias y espero que alguien pueda ayudarme.
-
0
Reacciones de usuarios
- 7 respuestas
- 3.5k visitas
- 2 seguidores
-
-
Buen dia, tengo un inventario que manejo manualmente, y queria automatizarme un poco el trabajo, por eso quería formar una base de datos tal cual se muestra en el siguiente video tutorial: Sin embargo, soy algo novato y no consigo hacer lo que dice el video, ¿alguien podría explicarme paso a paso por escrito? Ya he buscado varios software para inventarios, pero ninguno se ajusta a nuestras necesidades. Gracias de antemano.
-
0
Reacciones de usuarios
- 6 respuestas
- 3.5k visitas
-
-
Estimados, Buenos días, agradecería su apoyo con una macro que me permita insertar filas y copiar la cabecera según una condición: - En la hoja3 "Datos" la primera columna es Ciudad, lo que debería hacer la macro es identificar si el valor (ciudad) de la celda A3 es diferentes al de la celda A2, si son diferentes inserta 2 filas en blanco y copia la cabecera en la 2da fila en blanco, si son iguales pues repetir la validación hasta la ultima fila con valor. - Les pongo un ejemplo del resultado en base a la hoja3 para que se puedan guiar, la idea es que la macro modifique directamente en la hoja3 "Datos" y no tenga que crear otra hoja. * Las demás hoja…
-
0
Reacciones de usuarios
- 24 respuestas
- 3.5k visitas
- 1 seguidor
-
-
Hola, tengo este pequeño código, pero... al ejecutarlo se me queda el puntero del ratón (en círculo)girando y tengo que salir con CERRAR SESIÓN. Podéis ayudarme de forma muy sencilla ? mi código es este: Private Sub WorkSheet_Change(ByVal Target As Excel.Range) If Range("$L$7").Value = "1" Then Call Macro18 End If End Sub Sub Macro18() Application.ScreenUpdating = False Dim Str1 As String Dim Str2 As String Dim resultado1 As Long Str1 = Range("C8") Str2 = Range("L9") resultado1 = StrComp(Str1, Str2, vbTextCompare) Range("N9") = resultado1 + 1 Sheets("Hoja1").Select Application.ScreenUpdating = True Range("A1").Select End Su…
-
0
Reacciones de usuarios
- 4 respuestas
- 3.5k visitas
-
-
Hola necesito ayuda para crear una base de datos con macros y botones en exel donde me refleja las entradas salidas y un stock minimo asi mismo como crear mensajes de error y todo lo demas paso a paso
-
0
Reacciones de usuarios
- 1 respuesta
- 3.5k visitas
-
-
Buenas Tardes Foristas. Una vez más acá. tengo una pequeña duda y me gustaría que ustedes me ayuden . Quiero sumar dos o más TextBox y que el resultado me lo ponga en un Label en tiempo real. Necesito el código. Una amistad me dio este, y aunque no me pareció lo implementé y no suma. Private Sub LblImporte_Change () LblImporte.Caption = Val(TxtCantidad.valuie) * Val(TxtPrecio.Value) End Sub Gracias de antemano. Tengan un feliz resto del día. Pino
-
0
Reacciones de usuarios
- 5 respuestas
- 3.5k visitas
- 2 seguidores
-
-
Necesito poder extraer desde Excel VBA la lista global de direcciones de Outlook. No consigo información. ¿Alguien puede darme una pista? Juan Luis.
-
0
Reacciones de usuarios
- 3 respuestas
- 3.5k visitas
-
-
Estoy utilizando esta simbología (Labels) donde el circulo azul es Nuevo o ALTAS - La Paloma Verde es Actualizar y el Tache o cruz es Eliminar. La idea es que cuando el Mouse pase sobre de estos Labels salga una etiqueta lo que significa. Nuevamente gracias por su ayuda.
-
0
Reacciones de usuarios
- 10 respuestas
- 3.5k visitas
- 3 seguidores
-
-
Es la primera vez que escribo en este foro, y supongo que se notará. A base de leeros y del "corta+pega", he hecho una macro que funciona correctamente para lo siguiente: Tengo un archivo excel con varias pestañas. Me situo en una de ellas, y con la macro que diré, pulsando "Ctrl+s", me envía un mensaje de mail (outlook 2003), al destinatario que le digo, con el asunto que le digo y con un archivo excel que sólo es la pestaña en concreto en donde me he situado para pulsar "Ctrl+s". Además, después me elimina el archivo temporal creado con ese archivo enviado (esa pestaña). Va muy bien!!! (gracias por dejar copiar). PERO ahora pretendo otra macro, con eso mismo, PERO …
-
0
Reacciones de usuarios
- 1 respuesta
- 3.5k visitas
-
-
Cómo simular con código VB el pulsado de teclas de función Hola, Tengo esta necesidad. En una función de VB necesito que la fórmula que hay en una celda que se ve como texto se reemplace por un valor y se copie al resto de celdas de esa misma columna. La fórmula en cuestión viene escrita en un fichero .txt desde un ERP, por lo cual no se ejecuta automáticamente. Mirando las audas de VB para Excel he visto la función sendkeys y estuve haciendo pruebas pero no acaba de funcionar correctamente. La secuencia de lo que tengo que hacer es: 1. situar el cursor en una celda (BR6) 2. pulsar F2 (para editar la fórmula) 3. pulsar Intro para pegar el valor en la celda 4. co…
-
0
Reacciones de usuarios
- 1 respuesta
- 3.5k visitas
-
-
hola que tal expertos espero me puedan dedicar un poquito de su tiempo y pasciencia para aclarar esta duda que tengo ya que lo que intento hacer es una especie de control tipo calendario con un combobox donde al darle click en un combobox me despliegue un formato parecido al del dtpicker o calendario donde el combo box tiene un formato de este tipo combobox = Format(combobox, "dd/mmmm/yyyy") he logrado hacer una lista para dia otra para mes y otra para año, pero estan en distintos comboboxes mi pregunta es el como unir esas listas para que aparescan en un solo combobox,,,no he querido utilizar los calendarios o los dtpicker pporque no forman parte estandar de e…
-
0
Reacciones de usuarios
- 4 respuestas
- 3.5k visitas
-
-
En las hojas de cálculo he usado bastante las funciones mín común múltiplo (M.C.M) y máx común divisor (M.C.D). Pero ahora estoy haciendo una macro y no encuentro esas funciones en V.B.A. Me cuesta creer que no venga implementada. Si es así, me gustaría conocer alguna macro sencilla para obtener esas funciones. Gracias.
-
0
Reacciones de usuarios
- 4 respuestas
- 3.5k visitas
- 1 seguidor
-
-
Hola a todos. Soy nuevo en esta comunidad y quiero pedirles ayuda, tengo una macro en la que quiero manejar la entrada y salida de activos, tengo resuelto el tema del ingreso de un nuevo registro a la base de datos pero aun no he podido generar una consulta que me traiga los datos asociados a un serial determinado, me explico puedo ingresar un registro nuevo pero quiero hacer una consulta para saber si ya he registrado un activo determinado para luego solo actualizar los campos de hora de ingreso y hora de salida, la llave principal de la tabla que tengo en access es el serial por lo que no podria repetir este campo y por esta razon quiero hacer la busqueda en la tabla pa…
-
0
Reacciones de usuarios
- 6 respuestas
- 3.5k visitas
-
-
Hola a todos, Tengo el siguiente problema: He creado un formulario para grabar contactos dentro de una hoja de datos llamada "CONTACTOS" y cada vez que introduzco algún dato incorrecto, de manera alguna el formulario vuelve a grabar el mismo registro tantas veces como haya fallado dentro de la hoja de datos. Muestro por aquí mi formulario... Como se puede observar en la imagen adjunta, tiene un casillero inicial para elegir el tipo de contacto ("Proveedor" o "Cliente") y el resto de los datos están dispuestos en modo multipágina. "Denominación" para grabar los datos fiscales, "Domiciliación" para los datos de localización y "Comunicación" para los dat…
-
0
Reacciones de usuarios
- 6 respuestas
- 3.5k visitas
-
-
Buenas tardes, Tengo, en una columna datos del tipo xxxxxxxx/6/3. Necesito recorrer esa columna y modificar esos datos para eliminar todo aquello que esté a la izquierda de la primera barra. Es decir, en el ejemplo quedaría ésto: 6/3. A veces la celda en cuestión no contiene una barra, solo texto o números, en ese caso no hay que tocarla. Lo que necesito es un método rápido para recorrer esa columna y no se cual sería el mejor método pues hay días en los que la hoja tiene muchas filas de datos (cerca de 20.000) y no quiero eternizarme con este proceso. Adjunto fichero en el que muestro un ejemplo más amplio. Gracias por vuestra ayuda y vuestro tiempo…
-
0
Reacciones de usuarios
- 6 respuestas
- 3.4k visitas
-
-
El problema que tengo es el siguiente: Tengo una hoja de calculo, la cual tiene datos desde la celda A1, hasta aproximadamente la celda L250, el echo es que tengo que, filtrar datos, por la columna "K",y columna"L", que tiene unos 10 valores distintos. (opcion1, opcion2, opcion3....) bueno mi solución, fue crear un userform, el cual posee varias casillas de verificación, y al chulear, dichas casillas, y pulsar un botón de búsqueda, me realiza el filtro. Y hay es donde viene mi problema, el filtro se me aplica, únicamente a una solo opción, es decir si chuleo la opcion1, y la opcion2 únicamente me aplicara el filtro a una de estas opciones, y lo que necesito, …
-
0
Reacciones de usuarios
- 9 respuestas
- 3.4k visitas
-
-
tengo el siguiente código, pero no se como hacer para que los rangos de celdas no sena estáticos, es decir que ocurra en todas las celdas Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("D2").Address Then Range("E2:J2").ClearContents If Target.Address = Range("E2").Address Then Range("F2:J2").ClearContents If Target.Address = Range("F2").Address Then Range("G2:J2").ClearContents If Target.Address = Range("G2").Address Then Range("H2:J2").ClearContents If Target.Address = Range("H2").Address Then Range("I2:J2").ClearContents If Target.Address = Range("I2").Address Then Range("J2").ClearContents End Sub[/CODE…
-
0
Reacciones de usuarios
- 5 respuestas
- 3.4k visitas
-
-
Hola que tal os queria exponer unos problemillas con los botones de mi formulario. 1º-Cuando se abre el formulario me sale el cursor parpadeando en edad y no me tiene que salir en ningun sitio hasta que no de al boton de NUEVO. 2º- Como vereis cuando doy al BOTON NUEVO se me desactivan algunos botones y tb cuando doy AL BOTON BUSCAR. pero eso esta bien.( Eso es para que sepais como va un poquito).Mi pregunta es: Que cuando doy al boton nuevo y meto datos en los textbox despues tengo que dar al boton agregar para agregarlo a la base de datos y la verdad que no se me agregan.Y cuando doy al BOTON AGREGAR y me desaparecen lo que he metido en los textbox si quiero mover la…
-
0
Reacciones de usuarios
- 6 respuestas
- 3.4k visitas
-
-
hola tengo una duda respecto a la formula R1C1 en vba. grabe mi pimera macro para vincular una hoja que contiene la base de datos con las hojas en donde estos datos se pegan en filas diferentes aunque en la misma columna. el macro recorder me dio esta formula: activecell.formulaR1C1 = "='hojadedatos!R[-5]C[9]" el problema es que no siempre sera el mismo numero para la fila, es decir esta fila va a cambiar para la siguiente hoja que sera: activecell.formulaR1C1 = "='hojadedatos!R[-4]C[9]" existe alguna manera de que los numeros de la fila sean variables para no escribir de nuevo la formula cada vez que cambie de hoja? soy nuevo usando vba y agradeceria mucho me ayudara…
-
0
Reacciones de usuarios
- 3 respuestas
- 3.4k visitas
-
-
Hola: Como veréis, este código abre un archivo cuya ruta este en la celda seleccionada. Quisiera, si es posible, abrir dicho archivo pulsando doble click sobre la celda donde esté la ruta. ¿Es posible? (No veo necesario adjuntar archivo, pero si es necesario me lo pedís) Saludos. Public Declare Function ShellExecute Lib "Shell32.dll" Alias "ShellExecuteA" _ (ByVal hwnd As Long, _ ByVal lpOperation As String, _ ByVal lpFile As String, _ ByVal lpParameters As String, _ ByVal lpDirectory As String, _ ByVal nShowCmd As Long) As Long Function Abrir(prog_o_file As String) ShellExecute 0, "Open", prog_o_file, "", "", 1 End Function Sub AbrirPr…
-
0
Reacciones de usuarios
- 3 respuestas
- 3.4k visitas
-
-
Tengo un archivo que al habilitar contenido me aparece el error Error de compilación: El código de este proyecto se debe actualizar para usarse en sistemas de 64 bits. Revise y actualice las instrucciones Declare y, a continuación, márquelas con el atributo PtrSafe. y me abre Visual Basic para aplicaciones. el código es Private Type RECT Left As Long Top As Long Right As Long Bottom As Long End Type Private Declare Function GetWindowRect Lib "user32" _ (ByVal hwnd As Long, _ …
-
0
Reacciones de usuarios
- 0 respuestas
- 3.4k visitas
-
-
Amigos : Quiero introducir con números separados por dos puntos, minutos y segundos. Ej. 15:23 ( quince minutos con veintitres segundos ) Necesito que en otra celda muestre " quince minutos veintitrés" o algo similar , con letras. Gracias!
-
0
Reacciones de usuarios
- 9 respuestas
- 3.4k visitas
-
-
Buenas. En el ejemplo adjunto tengo una tabla (C14:D14) donde al selecionar un nombre, este aparece por codigo puesto en página en la celda C1. A partir de ahí se genera unos resultados que aparecen desde C2:D12. Lo que queria conseguir es que en si en esos resultados aparecen 1 o mas duplicados, apareciara un msgbox con el titulo "Atención" que alertara de que "Tienes una o varias coincidencia, ¿quieres continuar?", y diera la opción "sí o no". Gracias por vuestra ayuda. AVISOS1.xlsm
-
0
Reacciones de usuarios
- 9 respuestas
- 3.4k visitas
-
-
Buenas estimados: Esta vez vengo para que me ayuden con algo que no encontre información. resulta que tengo un formulario con un combobox que carga los años, desde el 2013 hasta 2020, lo que quiero es que al momento que el formulario cargue, automaticamente se seleccione el año en curso. en este caso seria 2013. Esto seria para no estar seleccionando a cada momento 2013. Espero haberme explicado bien. Les agradezco. Saludos
-
0
Reacciones de usuarios
- 1 respuesta
- 3.4k 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.