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?
8682 temas en este foro
-
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 tardes una consulta como puedo hacer una macro que al momento de ingresar estos datos (del 1 al 100) en la celda me convirtiera al dar enter automáticamente, entre los rangos de 1 a 5: En la hoja A1 coloco 50 pero automáticamente debiera aparecer 3, como esta en la descripción de abajo. De 1 punto a 11 puntos * 0,05 = 1 punto De 31 puntos a 49 puntos * 0,05 = 2 puntos DE 50 a 69 puntos *0,05 puntos = 3 puntos DE 70 puntos a 89 puntos *0,05 = 4 puntos DE 90 puntos a 100 *0,05 = 5 puntos La fórmula la tengo en una celda pero no hay espacio en mi hoja de impresión por eso deseo que haga esa conversión automáticamente al momento de i…
-
0
Reacciones de usuarios
- 7 respuestas
- 1.4k visitas
-
-
Hola amigos en esta ocasion quiero hacer la siguiente consulta: estoy haciendo una plantilla para realizar cotizaciones y la idea es que el numero de la cotizacion que esta en una celda especifica se convierta en el nombre del archivo cuando le de guardar, ojala me puedan ayudar. Gracias. Example.xlsx
-
0
Reacciones de usuarios
- 6 respuestas
- 1.4k visitas
-
-
Hola buen día, Necesito sumar una fraccion de hora, por ejemplo sumar 0.09 hrs a una hora en excel. Ejemplo, yo comienzo un proceso a las 6:31 am y me tardo en ese proceso 0.09 hrs lo que equivale a 5.4 min. Entonces mi hora final debe ser 6:36 am pero no encuentro como sumarle a la hora esa fraccion de tiempo. Anexo archivo. Esto con VBA Gracias TIEMPO POR REFERENCIA FINAL.xls
-
0
Reacciones de usuarios
- 3 respuestas
- 1.4k visitas
-
-
Hola a todos: Creo que para lo que necesito, necesito una macro. Tengo una columna con cerca de 5000 filas, donde hay números del 0 al 25. Necesito que en otra parte de la hoja u otra hoja, me da igual, me agrupe (me cuente) los datos que son superiores a 19, y que además, me los agrupe de tal forma que: - Cada valor de cada celda, es como si fuera "1 segundo", y cada valor por encima de 19 se denomina "sprint". - Hay veces que los datos vienen así: 4, 5, 19, 4,10... Lo que significa que en ese rango hay 1 sprint de 1 segundo. - Hay otras veces, que los datos vienen de tal forma que: 6, 7, 19, 20, 10....lo que sería 1 sprint de 2 segundos (puesto que hay 2 numeros c…
-
0
Reacciones de usuarios
- 2 respuestas
- 1.4k visitas
-
-
Hola buenos días. Tengo esta macro, y para concluirla, necesito posicionarme en la primera celda con la que comienza el proceso. Como se trata de celda activa, el rango nunca está definido. ¿Qué puedo hacer para ubicarme en la primera Activecell antes de finalaizar? ActiveCell.Cut Destination:=ActiveCell.Offset(-1, 0) ActiveCell.Offset(-1, 0).Select Selection.AutoFill Destination:=Range(ActiveCell.Offset(0, 0), ActiveCell.Offset(2600, 0)), Type:=xlFillDefault Range("GK22:NG22").Select Selection.AutoFill Destination:=Range("GK2:NG22"), Type:=xlFillDefault (INSTRUUCIÓN PARA SELECCIONAR LA PRIMERA Activecell) End Sub
-
0
Reacciones de usuarios
- 2 respuestas
- 1.4k visitas
-
-
Buenos días. Quisiera crear un checkbox que me ocultase o mostrase todas las filas cuya referencia empiece por 2, otra por 3....., pq si lo hago por rango de celdas al insertar una nueva fila tengo que cambiar todo el código de los checkbox. Un saludo y gracias checkbox.xls
-
0
Reacciones de usuarios
- 3 respuestas
- 1.4k visitas
-
-
Buenas tardes; Tengo un problemilla con una formula, he intentado grabarla desde excel pero al ser tan larga y tener tantas "" me da problemas, se podría sustituir las "" de la formula ( en la macro ) de alguna forma. Muchas gracias. - - - - - Mensaje combinado - - - - - Pd: he intentado sustituir las doble comillas por & Chr(34) &, pero me da error 1004.
-
0
Reacciones de usuarios
- 1 respuesta
- 1.4k visitas
-
-
Hola. Quisiera solicitar ayuda. Tengo una macro que quiero complementar. La siguiente porción de código compara el contenido de dos celdas de dos hojas diferentes del mismo libro. valorAnterior = B.Cells(filaEncontrada, x + 1) If A.Cells(y + 1, x + 1) <> valorAnterior Then C.Cells(y + 1, x + 1).Font.Color = vbBlue C.Cells(y + 1, x + 1).Font.Bold = True End If [/CODE] Si el contenido es diferente, se marcará en la hoja C el contenido de la celda con negrilla y color azul. Además de esto quiero que la celda quede con hipervínculo que me dirija a la celda de la hoja B, algo así como: C.Cells(y + 1, x + 1) ---->B.Cells(filaEncont…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.4k visitas
-
-
Hola a todos MacroLovers, Sucede que de vez en cuando me encargan reiniciar un servidor, al cual posteriormente debo cargarle una serie de comandos vía telnet por el puerto 23, lo cuál claramente toma tiempo, en consecuencia estaba pensando si será posible ejecutar alguna macro que a través de un combobox me pregunte la IP, para posteriormente enviar el listado de comandos en forma automatizada? Gracias,
-
0
Reacciones de usuarios
- 1 respuesta
- 1.4k visitas
-
-
Buenos dias amigos, avanzando con mi formulario de suministros me encuentro con el error de que no se encuentra el objeto he configurado un segundo userform "UserForm2" el cual se activa cuando hago clik en elemento del LISTBOX " LBProductos" y me permite escribir la cantidad del producto que deseo agregar. Hasta ahi funciona Pero al seleccionar el Boton "CONFIRMAR", para cargar la cantidad de ese producto seleccionado en el UserForm1 me dice que no se encuenta el objeto, y no encuentro la forma de resolverlo. La secuencia seria: _1 busco el producto en el USERFORM1, al hacer doble click sobre el producto -2 se act…
-
0
Reacciones de usuarios
- 7 respuestas
- 1.4k visitas
-
-
Buenas noches, estaba intentando adaptar una solución que me dio @Haplox, hace bastante tiempo, junto con otra de @Antonipara una pequeña base de inventario, pero me da error en esta parte Set encontrado = wsDestino.Range("b2:b" & uFd).Find(Celda) y llevo un par de días y no doy con ello, imagino que es un problema del Rango definido, pero me pierdo. Cuando le doy a depurar, observo que "encontrado" es = a nada, también que uFd = a 1048577, no se si esta recorriendo toda la columna hasta el final del libro. También querría ignorar, ocultar o que no me cargara ciertas filas en mi listbox, del formulario inventario.…
-
0
Reacciones de usuarios
- 0 respuestas
- 1.4k visitas
-
-
Hola amigos, que tal estan De nuevo por aqui con ustedes con un problema que no consigo resolver, les explico, tengo que buscar un dato del listbox, por nombre y entre fechas, hasta ahora he conseguido, buscar por nombre y fecha pero no entre fechas, espero que me puedan ayudar Gracias por adelantado Saludos https://www.mediafire.com/file/gftvekr0z4l7lok/Prueba.xlsm/file Prueba.xlsm
-
0
Reacciones de usuarios
- 3 respuestas
- 1.4k visitas
- 2 seguidores
-
-
Hola, buen día. Tengo un archivo de proyectos, cuyas etapas y actividades individuales están identificadas con números consecutivos con el siguiente formato: Fila 1 Etapa 1 : 4.28.1 Fila 2 Actividad 1: 4.28.1.1 Fila 3 Actividad 2: 4.28.1.2 Fila 4 Actividad 3: 4.28.1.3 Fila 5 Etapa 2: 4.28.2 Fila 6 Actividad 1: 4.28.2.1 Fila 7 Actividad 2: 4.28.2.2 Fila 8 Actividad 3: 4.28.2.3 El problema deriva en el tiempo que lleva corregir la numeración cuando se inserta alguna actividad o etapa interm…
-
0
Reacciones de usuarios
- 0 respuestas
- 1.4k visitas
-
-
Buenas tardes a todos: No se puede trabajar con rangos protegidos y otros no (editables) en las tablas. (O quizás desconozca la forma de hacerlo). Me han dicho en el foro que con las tablas la única forma de hacerlo es a través de VBA. Y por supuesto recibí con satisfacción la forma de hacerlo. Sin embargo se trataba de una tabla sencilla con apenas 5 columnas. Ahora tengo que hacerlo con una tabla de entre 20 y más columnas y se me complica mucho con el condicional IF y todos los operadores lógicos que hay que escribir. ¿Existe otra forma de hacerlo y que además evite la lentitud que crea tantos operadores lógicos? Muchas gracias Rubén …
-
0
Reacciones de usuarios
- 5 respuestas
- 1.4k visitas
- 1 seguidor
-
-
hola tengo en una carpeta 100 archivos de excel y necesito ir ejecutando una macro que me guarde en csv en una carpeta especifica que yo diga pero que no me cambie el nombre del archivo como podría hacer esto voy a mandar un ejemplo del archivo que necesito convertir, la otra pregunta que tengo es que cuando yo lo convierto a csv en la ultima columna me aparece la ultima fila con #¡REF! necesito si se puede anexar a esta macro la opción que borre todo lo que encuentre con #¡REF! gracias. Informacion clientes 2013-01.rar
-
0
Reacciones de usuarios
- 0 respuestas
- 1.4k visitas
-
-
He cargado mi Base Datos Excel 2010, en un ListBox de varias columnas. Si selecciono una fila del ListBox(con todos sus datos distribuidos en las columnas) ¿Cómo puedo hacer para que mediante un Botón, ubique éste registro único en la BD que está en la hoja excel y modifique el contenido de una de sus celdas(columna). aaaAaaadaaaa
-
0
Reacciones de usuarios
- 5 respuestas
- 1.4k visitas
-
-
BUenas noches, he buscado casos similares en el foro para resolver casi la parte final de mi problema pero no he podido hallar solución, les adjunto archivo donde he estado avanzando mi macro, en la hoja3 tengo 02 combobox uno con el nombre de Oficina y el otro con el tipo de encuesta: cliente incógnito y post transacción, mi consulta es cómo puedo hacer para actualizar la información cuando selecciono otro nombre de Oficina del combobox, solamente he hecho para actualizar la información cuando cambio el tipo de encuesta Gracias Saludos Tabla Preguntas 2.zip
-
0
Reacciones de usuarios
- 1 respuesta
- 1.4k visitas
-
-
Hola gente felicitaciones son todos unos genios en exel ,increible lo que pueden hacer ,la verdad es que yo tengo un archivo que no logro poder terminar ,se trata de llevar un registro de los envios a las tiendas, lo cuales se encuientran con numeros Ejem(1) es San isidro,el (2) Vicente lopez ,quiciera que la macro me guarde los datos de la misma , Los pasos son lo siguientes : primer hoja esta la base donde cargaria los datos (registrar) ,lo cual lo que cargue allí deberia de colocarse en las hojas (registro) y (Consulta) la misma deberia de tomar desde la hoja (Listas Locales) solamente pude hacer el registro de transporte pero no de lo demas por que no me salen ,…
-
0
Reacciones de usuarios
- 0 respuestas
- 1.4k visitas
-
-
Hola Amigos del Foro Es mi deseo agradecer la oportunidad que dan en este foro de aprender de muchos de ustedes y a su vez aportar algo de los pocos conocimientos. En esta oportunidad tengo un inconveniente con la conexión Excel Access - He tratado de crear la macro de conexión pero solo me da errores. Donde está la situación creo es que la BD Access está en un equipo remoto. No he podido establecer la cadena de conexión bien... en fín he intentado con múltiples opciones y nada Este es mi codigo: , Private Sub CmBtnEnviar_Click() Dim strSQL As String, _ CuadroTexto As Control 'me aseguro de que todos los cuadros de texto están rellenos 'For Each CuadroTex…
-
0
Reacciones de usuarios
- 0 respuestas
- 1.4k visitas
-
-
Hola a tod@s. Tengo libro con 50 hojas. Sub OcultarExceptoActiva() Dim Ws As Worksheet For Each Ws In ThisWorkbook.Worksheets If Ws.Name <> ActiveSheet.Name Then Ws.Visible = xlSheetHidden Next Ws End Sub Hace lo que dice. Pero el problema está en que no obedece a sus vínculos. ¿Se podría solucionar? Agradecido de antemano.
-
0
Reacciones de usuarios
- 16 respuestas
- 1.4k visitas
- 5 seguidores
-
-
Buenas, tengo un proyecto con tres userforms a los cuales he podido acceder en un proceso normal. Pero me ha llegado el problema cuando he querido volver a un userform que le habia puesto en .Hide y me saltaba el error de que no se podía mostrar porque ya estaba abierto. He intentado ir cerrando los userform según iba pasando al siguiente mediante una funcion ubicada en un módulo y ahora me da error '91' en tiempo de ejecucion - variable de ojeto o bloque with no establecido. Esta es la funcion que la tengo ubicada en un Módulo. Function FormularioAbierto(ByVal Nombre As String) As Boolean Dim frm As Object frm = False For Each frm In VBA.UserForms …
-
0
Reacciones de usuarios
- 5 respuestas
- 1.4k visitas
- 1 seguidor
-
-
Hola a todos los amigos del foro, nuevamente recurro a ustedes los expertos a que ayuden con el siguiente caso: En el formulario que les subo de ejemplo deseo que al usar la función "Buscar", el botón de "Ingresar" se inhabilite, bloquee, o no permita que el dato buscado, por error se ingrese nuevamente o duplique Quedaré muy agradecido al amigo que me ayude. Les saludo. Elmo Rodríguez Form Ejemplo.zip
-
0
Reacciones de usuarios
- 6 respuestas
- 1.4k visitas
-
-
Hola! Acudo nuevamente a la sabiduria de los usuarios de este foro. Mi consulta es la siguiente, en una carpeta tengo varios archivos con un formato o extensión .dbf .prj .shp .shx, estos tienen el mismo nombre pero cambian solo la extensión. Pero tengo casos en que existen varias versiones de estos archivos de las cuales necesito obtener el nombre de la ultima version, es decir la ultima modificada. Por lo que tendria que tener, en primer lugar, el nombre de los ultimos archivos modificados para lo cual defino la siguiente funcion: Function encontrar_ultimo(sitio As String) As String ruta = ActiveWorkbook.Path & "\" & sitio 'codigo de busqueda End Functi…
-
0
Reacciones de usuarios
- 3 respuestas
- 1.4k visitas
-
-
Hola , quiero insertar un boton de opcion en un formulario para hacer traspasos entre cuentas, que al hacer click en el boton opcion se muestre un combo box y al anotar el importe se descuente de una cuenta y se carge en otra cuente. saludos envio un archivo CuentasClaras.rar
-
0
Reacciones de usuarios
- 4 respuestas
- 1.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.