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
-
Tengo el siguiente problema, en el paso de validación de un formulario, tengo que validar 3 o 4 campos por linea, las lineas pueden llegar a ser 20. Es por eso que quisiera poder mediante un FOR a cada uno de los textbox/combobox. Intente algo asi pero no funciona, se que no lo estoy haciendo correctamente. Lei algo acerca de indexar pero tampoco se realizarlo, podrian indicarme por donde atacar el problema. Muchas gracias. VALIDACIÓN PARA LA PRIMER LINEA: If Npedidobox1.Value = "" Then MsgBox "Por favor seleccione Numero de Pedido en la linea 1.", vbExclamation, "Carga de Movimiento" Exit Sub End If If Conc…
-
0
Reacciones de usuarios
- 2 respuestas
- 607 visitas
-
-
Hola genios: Estoy comenzando con este apasionante mundo de las macros y quisiera conocer sus ideas. He creado un libro con algunas funciones y formulas que me ayudan a optimizar mis tareas. mi "hoja 3", llamada "Mensajes" pretende llevar un registro de mensajes y tareas que trabajamos entre algunos usuarios (archivo compartido). Así, si yo encuentro algo de interes, lo dejo anotado y quien lea el mensaje trabajara al respecto en las otras hojas. Mi hoja "Mensajes" debe hacer lo siguiente: Columna A, solo admitirà 2 valores: "PENDIENTE"y"TERMINADO" Columna B se usara para ingresar el mensaje. Columna C se usara para ingresar la fech…
-
0
Reacciones de usuarios
- 1 respuesta
- 665 visitas
-
-
Buenos días, Requiere de su ayuda para que por favor me apoyen diciéndome como puedo plantear un código vba, que me permita consolidar todos los archivos contenidos en una carpeta X en un solo archivo de excell para poder armar una base de datos. obviamente los archivos contenidos en la carpeta tienen la misma estructura (misma cantidad de campos, iniciando en A1 y terminado en la columna F), solo que son casi 60 archivos los que debe consolidar la macro. Si me pueden ayudar les agradecería inmensamente.
-
0
Reacciones de usuarios
- 3 respuestas
- 1.4k visitas
-
-
Hola a todos, espero me den una mano con esta macro que encontré en este foro, lo quiero adaptar a mis necesidades pero no lo logre.. La idea es que me busque los datos de la columna "E", de la "hoja27" y una vez que encuentre me posicione el cursor en la celda, esta macro la hace pero solo con nombres cortos Ej. fast, pero yo tengo de la siguiente manera Ej. Alimentación - Restaurante - FAST WAY FOODS S.R.L., lo ideal para mi es que encuentre al darle Fast o Way sin importar el orden Y cuando presiono el Botón "criterio" que me limpie el textbox, porque ahi da un error al repetir la busqueda y en el label2, que me de los valores de la celda "D".....desde y…
-
0
Reacciones de usuarios
- 1 respuesta
- 631 visitas
-
-
Hola a tod@s mi pregunta es la siguiente: Quiero poner caducidad a un libro de Excel una fecha en donde se caduque y no puedan acceder al libro. Estuve buscando una macro y pille esta: Private Sub Workbook_Open() Dim FechaCaducidad As Date FechaCaducidad = #5/14/2016# If FechaCaducidad > Date Then MsgBox "Faltan " & FechaCaducidad - Date & " días para su caducidad", vbInformation Else MsgBox "Lo sentimos, pero este libro de trabajo" & vbCrLf & "ha llegado a su fecha de vencimiento", vbCritical Application.DisplayAlerts = False ActiveWorkbook.ChangeFileAcces…
-
0
Reacciones de usuarios
- 9 respuestas
- 3.3k visitas
-
-
Estimados, la consulta es la siguiente: tengo este vinculo en A1 ='C:\Users\Usuario\Cursos\1º AÑO TT\[LENGUA_Y_LITERAT_1º_TT.xlsm]Hoja1'!D10. Lo que necesito es que cuando pegue la formula en otra celda le pueda cambiar solo la parte de la celda donde esta el dato, en este caso seria "D10", es decir poder modificar D10 por la letra y numero que yo quiera por ej. P13. y que me pegue la formula donde yo quiera. Bueno no se si se entendió bien pero esa es la idea mas o menos.
-
0
Reacciones de usuarios
- 0 respuestas
- 535 visitas
-
-
Hola a todos...quisiera saber como hacer para que esta macro me busque palabras que se encuentran dentro de una cadena de texto. Ej. Combustible - Estación de Servicios Internacional - RAMIREZ GALEANO MILCIADES VIDAL......es decir escriba "Estación o Servicios o Vidal y que me lo encuentre He probado de diferente manera y no pude dar con el...creo que mi problema está en esta linea....... palabra = VBA.Format(Me.TextBox2, "*") Esta es la macro que dispongo Private Sub CommandButton2_Click() Dim palabra As String With Range("E1:E" & Range("E" & Rows.Count).End(xlUp).Row) palabra = VBA.Format(Me.TextBox2, "*") Set fil = .Find(pala…
-
0
Reacciones de usuarios
- 4 respuestas
- 821 visitas
-
-
Saludos amigos del foro, tengo un archivo que al abrirlo y luego mostrar el userform esta todo bien pero al cerrar con unload me se muestran junto al archivo otras dos hojas. Sospecho que debido a que le aplique un codigo para minimizar y maximizar el userform este esta haciendo algo como eso pero no estoy seguro, pongo el codigo de min-max: Option Explicit Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Declare Function FindWindow…
-
0
Reacciones de usuarios
- 2 respuestas
- 727 visitas
-
-
Estimados amigos del foro me gstaria que me ayudaran a resolver este tema, el mismo que muchos buscan tener resuelto este caso en la mayoria de sus aplicaciones. Una aplicacion excel que abra automaticamente un userform, se oculte excel de manera independiente a otros abiertos, en el userform exista un modo de mostrar al excel y volver al userform ocultándolo. Al cerrar el archivo se vuelva todo normal al excel con previo guardado He intentado algunas cosas pero se presentan errores al probar diferentes modos Espero me puedan colaborar y ademas lo puedan colocar en aportes, ya que es útil para todos Gracias anticipadas subo el archivo para que lo…
-
0
Reacciones de usuarios
- 0 respuestas
- 704 visitas
-
-
Teno la siguiente macro pero me error 1004 por que puede ser. La macro es para cuando encuentre una X en las celdas b9:b200 oculte las filas que contienen una X Sub ocultarfilas_FRIO_NO_TALLER() ' ' ' ActiveSheet.Unprotect For Each celda In Range("b9:b200") If celda.Value = x Then ActiveCell.EntireRow.Hidden = TrueElse ActiveCell.EntireRow.Hidden = False End If ActiveCell.Offset(1).Select Next ActiveSheet.Protect End Sub
-
0
Reacciones de usuarios
- 2 respuestas
- 870 visitas
-
-
Hola a Todos, Tengo un archivo que hace la búsqueda correcta en una carpeta de un archivo en formato PDF, sin embargo lo que deseo es que este mismo haga búsqueda parciales, osea que me busque los tres dígitos de un archivo, en este caso lo deseo para que me busque números de boletas y no deseo escribir todo el nombre del archivo, porque es extenso. ¿Es posible hacer eso? Espero su pronta respuesta. ayuda_pdf_1.xlsm
-
0
Reacciones de usuarios
- 9 respuestas
- 1.3k visitas
-
-
Hola y de antemano muchísimas gracias por su ayuda. Estoy desesperado ya que no encuentro una solución a mi problema, el cual describiré a continuación: Tengo dos ComboBox y quiero hacer uno dependiente del otro dentro de un formulario, mis listas se agrupan de manera horizontal... por ejemplo: ComboBox1 - Celda (A1:A100) / ComboBox2 - Celdas a la derecha, (10 Celdas B1:K1 ) A B C D... 1 Aves Carpintero Cotorra Perico 2 Caninos Chihuahueño Salchicha Bulldog 3 Felinos Tigre León Puma …
-
0
Reacciones de usuarios
- 1 respuesta
- 2.8k visitas
-
-
Saludos amigos foreros De nuevo recurro a su ayuda para resolver un problema que me tiene atrancado por mucho que me esfuerzo, intento sumar las horas trabajadas desde 2 listbox los agrego a unos textbox y sumo estos, aqui tengo el problema, tambien me sucede que dentro del list el formato de hora no me aparece Espero que puedan eharme una mano Gracias por anticipado, saludos Prueba.xlsm
-
0
Reacciones de usuarios
- 1 respuesta
- 1.4k visitas
-
-
Hola les pido su ayuda con lo siguiente... tengo un formulario en Excel que me ayuda a actualizar un catalogo de fotos Web estas fotos están en una tabla de una base de datos Oracle, la macro que utilizo estaba funcionando bien hacia el cambio sin problemas solo que debido a otros problemas tuve que reinstalar el SO en mi equipo y al querer usar de nuevo esta macro ya no funciona, si actualiza la información pero no termina se queda congelado Excel. Esta es la Macro que utilizo: Sub SubirFoto() Dim sql As String Dim m_stream As Object Dim cn As Object sql = "select foto from prueba_fotos where num_empleado=44163" Set cn = CreateObject("ADODB.Connect…
-
0
Reacciones de usuarios
- 0 respuestas
- 699 visitas
-
-
Buenos días: Tengo el siguinte código: Sub NombreHoja() ActiveSheet.Name = Range("B1").Value End Sub Bueno pone el nombre a la hoja de calculo según el valor de la celda, mi pregunta es de que si hay otra hoja con el mismo nombre me de un aviso para cambiar de nombre o en su caso asignarle por defecto un carater numérico para diferenciarse de la otra hoja que tenga el mismo nombre. Saludos cordiales Jesús
-
0
Reacciones de usuarios
- 4 respuestas
- 1.1k visitas
-
-
Buenos días: Trabajo con dos libros uno Caja Jesús 2016 y otro Cuentas por cobrar, bueno en mi libro caja en la hoja BOLETOS en la celda F1 ingreso el nombre de una de las hojas de mi otro libro Cuentas por cobrar, para este ejemplo solo puse algunas hojas, pero la verdad tengo como 200 hojas que las utilizo. Mi consulta es de como ir a la hoja del libro Cuentas por cobrar según el valor de la celda F1 de mi libro Caja Jesús 2016. Muchas gracias por su atención, saludos cordiales Jesús Caja Jesus 2016.xlsx Cuentas por cobrar.xlsx
-
0
Reacciones de usuarios
- 7 respuestas
- 6.1k visitas
-
-
Estimados, Tengo una formula y dicho resultado se muestra en el textbox de "total" pero no logro hacer que el resultado se actualice cada vez que cambian los datos del los textbox que contienen la información para el calculo. Private Sub TextBox11_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) Me.TextBox14.Text = Sheets("PLANTILLA").Range("K19") If TextBox4 <> "" Or TextBox5 <> "" Or TextBox6 <> "" Then Me.TextBox11.Text = Val(Me.TextBox4.Text) + Val(Me.TextBox5.Text) + Val(Me.TextBox6.Text) Else MsgBox "Ingrese Distribución", vbExclamation, "Mensaje CCM" End If End Sub Entonces necesito que el valor de Me.TextBox1…
-
0
Reacciones de usuarios
- 2 respuestas
- 7k visitas
- 1 seguidor
-
-
Buenos días, ante todo y como en otras ocasiones gracias de antemano. Con ayuda de este foro he realizado una macro que copia ciertos datos de excel y los pega en un documento word. Estos datos de dividen en varias tablas que en algunos casos ocupan mas de 2 paginas. Lo que necesito es el código para que desde excel recorra todo el documento de word y en todas las tablas que existan repita las 4 primeras filas como encabezado. Llevo dos días buscando una solución pero no hay manera. Muchas gracias.
-
0
Reacciones de usuarios
- 2 respuestas
- 9.3k visitas
-
-
Hola me gustaria poder crear una cinta personalizada en el ribon (botones opciones etc etc) ahora desconosco totalmente como se hace, si mediante codigo (cosa que lo dudo) o con alguna herramienta especial tengo mi sospecha que es un xml pero bueno espero alguna orientacion de parte de ustedes. Saludos
-
0
Reacciones de usuarios
- 3 respuestas
- 1.4k visitas
-
-
Buenas, mi consulta es la siguiente: En un excel tengo una base de datos los cuales se pasaran a un Word y llenaran formularios, y esto lo estoy haciendo mediante correspondencia. Mi duda entra en que cuando por ejemplo una celda del excel este vacia (o con un "-") al pasarlo al word en ves de pegar el espacio, borre cierta cantidad de texto. Gracias.
-
0
Reacciones de usuarios
- 0 respuestas
- 534 visitas
-
-
Pues resulta que hace tiempo hice un pequeño programa para hacer facturas con excel y vba, pero he descubierto que cuando escribo en la factura unas cantidades con decimales pues al guardarlas en el registro de vba no hace caso a dichos decimales, considerando que no son tales y me agrega dos decimales. Me explico , si yo pongo en cantidad 2, precio unitario 15,15, me da un total de 30,30, al que luego se le calcula su iva y el total, pues al grabar estos datos en el registro me guarda en Cantidad 2, en precio unitario 1.515,00 y en subtotal 3.030,00. El codigo con el que recogo estos datos es el siguiente: Call Abrir_Tb_Detalle_Facturas ActiveS…
-
0
Reacciones de usuarios
- 5 respuestas
- 733 visitas
-
-
Buena Compañeros Deseo crear un macro que le lea un archivo en excel y me copia el rango de celdas hacia abajo la cantidad de veces como haya información en la columnas de al lado, espero haber sido claro, adjunto archivo con el ejemplo de la macro que necesito Gracias Fdotrujillo Libro1.xls
-
0
Reacciones de usuarios
- 5 respuestas
- 574 visitas
-
-
hola disculpen mi ignorancia necesito crear un reloj checador de salida y entrada si para checar la salida y el regreso de personal en horario de descanso alguen me puede decir como hacerle
-
0
Reacciones de usuarios
- 11 respuestas
- 7.1k visitas
-
-
¿Alguien sabe si existe una manera de escribir una macro - por ejemplo en el libro de macros personal - que escriba código en los módulos de VBA de otros libros? El caso concreto en que esto podrías ser útil es el siguiente: tengo 20 archivos en uso por parte de los empleados de una empresa, cada uno de los cuales es exactamente igual a los demás y contiene las mismas macros, sólo que cada uno de los empleados usa su archivo para registrar sus propios datos. Tengo que hacer un cambio en las macros de todos los archivos, y si no hay manera de "escribir una macro que escriba macros" tendré que ingresar a los archivos uno por uno y cambiar los códigos manualmente. …
-
0
Reacciones de usuarios
- 3 respuestas
- 2.1k visitas
- 1 seguidor
-
-
Hola Buenas a Todos; tengo esta macro, la cual al darle aceptar en el botón, me arroja los datos en las celdas respectivas, pero solo me arroja en la fila 7, obviamente porque así esta hecho, la idea es que me arroje todos estos datos en sus respectivas celdas, pero la indicación de la celda activa, estará indicada en las celdas de la columna "B"... Ej. me posiciono en la celda B8...que todos los demás datos también sean arrojados en esa misma fila en sus respectivas columnas...y así por delante, comenzando siempre por la celda B7 Este es la macro...desde ya muy agradecido Private Sub CommandButton3_Click() Range("f7").Value = Range("F7").Value & …
-
0
Reacciones de usuarios
- 3 respuestas
- 760 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.