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 Maestros del Excel, un abrazo desde Colombia. Tengo la siguiente necesidad. He hecho una pequeña herramienta Excel - Access donde desde Access abro un libro de excel. Este libro, a propósito, se demora en abrir unos 7 segundos. Pues después de que el libro está abierto debo desde excel ir a ACCESS y abrir un formulario específico según un dato en Excel al darle, por ejemplo, doble click en una celda. Las dudas que tengo son: 1. Como puedo integrar una barra de progreso que mida el progreso de la apertura del libro de excel? Importante: en la apertura de este libro no hay bucles como para pensar en medir avances dependiendo de la posición del código en…
-
0
Reacciones de usuarios
- 4 respuestas
- 2.1k visitas
-
-
Buenos Días: Como programo la macro para que recorra la columna B y si encuentra la fecha de hoy tome la cantidad de la columna pequeña y se la sume a la cantidad de la columna mediana logicamente sobre la misma fila. El resultado deberá ser el nuevo dato de la columna mediana y debera borrar el dato de la cantidad en la columna pequeña PRUEBA.xlsx
-
0
Reacciones de usuarios
- 2 respuestas
- 2.1k visitas
-
-
Hola buenas, soy nuevo en el foro y, aunque he visto peticiones similares, no he conseguido aplicar las soluciones a mi hoja. En mi caso, tengo un libro de excel con doce hojas (una por cada mes). Necesito una macro que busque en cada hoja anterior (es decir, si estamos en la hoja "Abril" que busque en las hojas de Enero, Febrero y Marzo el valor "Abril") en la columna G el valor del mes correspondiente. Una vez hecho esto, que copie las filas correspondientes y la inserte en la celda A5 del mes de Abril. Tengo hechas ya las fórmulas para que solo sume los valores correspondientes al mes en cuestión, así que eso no sería problema. Soy consciente de que hará falta ha…
-
0
Reacciones de usuarios
- 1 respuesta
- 2.1k visitas
-
-
Hola tengo un libro de facturación casi terminado pero siempre quiere uno una función más, y desde unas de mis hojas denominada "Facturar Albaranes" quiero tener acceso a una carpeta de mis Documentos "Albaranes no pagados" y quiero abrir esa carpeta desde esa hoja en concreto desde el rango (B12:B39) al hacer doble clic en cualquier celda de ese rango para tener acceso a todos los albaranes de un cliente por ejemplo. Tengo algunas macros y me funcionan muy bien, pero no puedo sacar esta. Esto siguiente va en la página pero tampoco me funciona. Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Worksheets ("Albaranes_Facturados") If N…
-
0
Reacciones de usuarios
- 3 respuestas
- 2.1k visitas
-
-
Buenos días ,Llevo días atascado en un problema relacionado con la función extraer datos. Tengo un nivel de excel muy básico así que cualquier ayuda será de mucho agredecer.La cuestión es que he creado una base de datos excel para gestionar las entradas y salidas de un párquing. El funcionamiento es simple pero eficaz. Se introduce el número de tarjeta o id del conductor y mediante la fórmula extraer se recuperan el resto de datos suyos que le identifican a él y su vehículo (fotografía, nombre, cargo, matrícula del vehículo, marca, modelo, etc), de modo que te indica que está autorizado. En caso contrario, aparece la indicación no autorizado.Estos datos a su vez se copian…
-
0
Reacciones de usuarios
- 25 respuestas
- 2.1k visitas
- 1 seguidor
-
-
Buen día!! Recurro a Uds. para solucionar estos inconvenientes!! 1.- Coloqué un código en el evento "Workbook_Open para que al abrir el archivo me presente visualmente en las hojas las líneas punteadas que indican los límites de impresión (no la vista preliminar de impresión) pero me lo aplica sólo a la hoja activa. Cómo corregirlo?? 2.- Al activar la macro mediante el botón de comando "HojaNueva2016" me copia la hoja pero me bota un error y al correrla paso a paso me bota otro error. 3.- En ocasiones me presenta la vista preliminar en el código de la Hoja 1 y tengo que pulsar la tecla "ESC" para que el código continúe. Al incluir la instrucción "SendKeys {ESC}" me indic…
-
0
Reacciones de usuarios
- 11 respuestas
- 2.1k visitas
-
-
Hola amigos de Ayuda Excel Muy buenos días. Estoy haciendo un indicador visual el cual consiste en que una forma (compuesta de 3 objetos) debe cambiar de color en función del resultado de una formula en una celda. En este sentido, si el resultado de E17 es mayor o igual a 0, el circulo y flecha arriba de la forma deben ser de color verde y la flecha abajo sin color. Y si el resultado de E17 es menor de 0, el circulo y flecha abajo de la forma debe ser de color rojo y la flecha arriba sin color. Agradecido de antemano por la ayuda y valiosa colaboración COLOR DE OBJETO.xlsm
-
0
Reacciones de usuarios
- 6 respuestas
- 2.1k visitas
- 1 seguidor
-
-
Buenas tardes amigos. Tengo que corregir cerca de 12 mil registros, y a pesar de tener una fabulosa herramienta de modificacion, se me ha hecho tedioso por el tamaño de la data. Por lo que me preguntaba si seria posible actualizar tres de las columnas de estas dos tablas (Tablas Salidas y Entradas), con la informacion de otra tabla (Tabla Maestra), la cual posee toda la informacion necesaria. Las columnas a actualizar son Ubicacion, Lado y Baul. Se que lo puedo hacer con formula, pero no quiero mezclar datos con formulas. Agradecio por la ayuda que me puedan brindar. Archivo
-
0
Reacciones de usuarios
- 11 respuestas
- 2.1k visitas
-
-
Hola. La consulta es como pegar un rango de celdas B10:B46 de la hoja 1 a un rango que no tenga datos en la hoja 2 F10:F46 y si tiene datos este rango que encuentre hacia la derecha el rango libre. Muchas gracias
-
0
Reacciones de usuarios
- 3 respuestas
- 2.1k visitas
-
-
Buenas noches, necesito sacar de un archivo con 200 hojas aprox (que son facturas , todas con el mismo formato) un resumen de facturación con nombre cliente, fecha, número fra, importe, ... Como lo puedo hacer , no tengo ni idea de macros. Por favor ayuda!!! Y que sea fácil ...
-
0
Reacciones de usuarios
- 15 respuestas
- 2.1k visitas
-
-
Hola, tengo una macro que desprotege ciertas celdas, cuando apreto la misma, primero te pregunta la contrasena. Pero necesito que cada vez que la contrasena es incorrecta no me tire error 1004 sino un cartel que diga contrasena incorrecta. Cree la siguiente macro pero no me funciona: Sub Desproteger() ' ' Desproteger Macro ' ' On Error GoTo Errhandler ActiveSheet.Unprotect Sheets("OP").Select ActiveSheet.Unprotect Sheets("NP").Select Range("F11").Select Exit Sub Errhandler: MsgBox "No dijiste la palabra magica", vbOKOnly, "Error" Exit Sub End Sub Que debo hacer para que funcione? Desde ya muchas gracias =)
-
0
Reacciones de usuarios
- 4 respuestas
- 2.1k visitas
-
-
Nuevamente es un gusto saludarles. Otra vez consultando, tengo un UserForm dentro del cual se encuentran cuatro secciones: Depósitos Banarios, Tarjetas de Crédito, etc., en cada sección se puede grabar la cantidad de registros que sean necesarios. El formulario funciona así, ejemplo: Al abrir el formulario ingreso la fecha y el código de la tienda, luego en la sección depósitos bancarios ingreso mis datos los cuales al presionar el botón “Añadir Registro” los carga a la hoja de Excel en las columnas de la “I” a la “O” tomando como referencia la columna “H”, la misma operación realizo con las demás secciones, una vez ingresada toda la información necesaria le doy enter e…
-
0
Reacciones de usuarios
- 2 respuestas
- 2.1k visitas
-
-
Hola a todos. Perdonar con este asunto, creo que debe ser una tontería, pero no logro ver el error. Con esta sentencia me da error: Worksheets("KM_iniciales").Range(Cells(1, 1), Cells(maxrow, maxcolumn)).ClearContents Y sin embargo así funciona. Worksheets("KM_iniciales").Range("A1:K" & maxrow).ClearContents Quisiera que la columna a eliminar no fuera siempre la K porque podría ser otra, por eso quiero hacerlo con cells, pero no logro que funcione. ¿Qué estoy poniendo mal? Teniendo en cuenta que busca la última fila y columna así. maxcolumn = Worksheets("KM_iniciales").Cells.SpecialCells(xlLastCell).Column maxrow = Worksheets("KM_inic…
-
0
Reacciones de usuarios
- 8 respuestas
- 2.1k visitas
-
-
hola amigos estoy pretendiendo:frog: hacer un especie de semaforo de actividades, es decir; que por ejemplo en determinada fecha se registró una actividad pero al transcurrir el tiempo:uncomfortableness: necesito que el sistema me de el indicador de "*******" (rojo), "prevenirse" (amarillo), "sin problema" (verde):cold:...esto lo quiero hacer obteniendo la informacion de las celdas de excel y que cuando abra el formulario de esa celda activa me muestre dicho semaforo...¿creen poderme ayudar almenos con las ideas?:concern: gracias y saludos conteodediasmesesyaños.xls
-
0
Reacciones de usuarios
- 0 respuestas
- 2.1k visitas
-
-
Muy buenas, tengo un formulario donde se debe de actualizar datos de una tabla mediante un botón, el problema que tengo con el código es que solo me corre cuando actualiza un celda pero cuando añado para que me actualice mas celdas de una fila me sale el error 1004. Agradeciendo de antemano por su ayuda. Private Sub BT_Modificar_Click() Dim fila As Object Dim linea As Integer Dim MENSAJE As String valor_buscado = Me.TXT_Cod Set fila = Sheets("BASEdeDATOS").Range("A:A").Find(valor_buscado, lookat:=xlWhole) linea = fila.Row MENSAJE = MsgBox("¿ESTÁS SEGURO DE EDITAR LOS DATOS?", vbQuestion + vbYes…
-
0
Reacciones de usuarios
- 5 respuestas
- 2.1k visitas
-
-
Hola compañeros, soy algo nuevo en el tema de macros... he podido realizar una macro (con ayuda del foro) pero tengo el problema que mientras mayor cantidad de datos el calculo demora demasiado hasta el punto de colgarse la aplicación... La función de la macro es que en la columna M me indique con una X los registros mas recientes, esto luego de comparar las columnas K, E y F. por ejemplo el Folio (columna K) N° 36078-S0801002537 tiene 4 registros, se marca con X la fila con fecha mas reciente (columna E), en el ejemplo existen 2 días iguales (columna E) , en ese caso se verifica por la hora (columna F) por lo tanto luego del analisis marca con una X (columna M) la fi…
-
0
Reacciones de usuarios
- 3 respuestas
- 2.1k visitas
-
-
Hola Buen Dia Gente, Es mi primer post en el Foro Quero Dar las gracias por este gran aporte que brindan! Despues Paso a lo Siguiente., Tengo un simpre formulario el cual contiene un boton me crea una Base Datos en SQL otro que crea la Tabla y Poateriormente Introducir los Datos , Los Datos me los Agrega perfectamente al Excel, Pero lo que quiero es que tambien los Pegue en la Tabla de la Base de Datos SQL. Si alguien me puede suguerir Algo Estoy Disponible Graciass! Base de Datos.rar
-
0
Reacciones de usuarios
- 0 respuestas
- 2.1k visitas
-
-
Estimados, Soy nuevo en este foro. quisiera saber si son capaces de ayudarme con el siguiente porblema: Estoy utilizado el codigo de mas abajo, que junta varios libros en uno solo (nuevo libro creado por el macro), y me gustaria que si se puede hacer que junte esos libros en el mismo donde tengo la macro y sin borrar las hojas que existe. saludos y gracias Sub UnirLibros() Dim Directorio, NombreLibro As String Dim ContadorFicheros As String Dim Unidos As Workbook Dim K, NumHojas As Integer Dim Libro As Workbook Directorio = ThisWorkbook.Path ContadorFicheros = Dir$(Directorio + "\*.*") 'Crea el libro que contendrá a todos los demás Application.SheetsInNewWor…
-
0
Reacciones de usuarios
- 0 respuestas
- 2.1k visitas
-
-
Hola compañeros, Llevo un tiempo con un problema en el siguiente código, y no sé cómo solucionarlo. Private Sub Worksheet_Activate() Cells().Columns().Ungroup ' 1 Columns(4).Group ' 2 Columns(5).Group ' 3 Me.Outline.ShowLevels ColumnLevels:=1 ' 4 End Sub Me gustaría insertar un condicional en la primera sentencia tal que "If Cells().Columns().Group = True Then Cells.Columns.Ungroup", para de este modo ejecutar el resto de las sentencias (la segunda, tercera y cuarta) sin problemas. Pero esa instrucción me da problemas... En otras palabras, un evento tal que al activar la hoja, se agrupen la…
-
0
Reacciones de usuarios
- 5 respuestas
- 2.1k visitas
-
-
Tengó la siguiente macro que me permite exportar a PDF en una ruta definida por mi: Option Explicit Sub CreaPDF() Dim NombreArchivo, RutaArchivo, historico, separador As String NombreArchivo = Cells(7, 3).Value RutaArchivo = Cells(42, 2).Value historico = Cells(3, 6).Value separador = “-” ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=RutaArchivo & NombreArchivo & separador & historico, _ Quality:=xlQualityStandard, IncludeDocProperties:=True, _ IgnorePrintAreas:=False, OpenAfterPublish:=False End Sub Esa macro me exporta a un pdf la planilla que tengo en una ruta definida. Lo que necesito hacer ahora es qu…
-
0
Reacciones de usuarios
- 5 respuestas
- 2.1k visitas
-
-
Hola a todos, Estoy intentando crear una macro que me automatice un formulario web. Consigo rellenar los textbox normales utilizando el siguiente código pero no sé como conseguirlo en los richtextbox que contiene. Set ie = CreateObject("InternetExplorer.Application") With ie .Visible = True .Navigate direccion Do While ie.ReadyState <> 4 And ie.Busy = True DoEvents Loop End With Set campo1=ie.Document.getelementbyid(etiqueta) campo1.value=valor Espero me podáis dar alguna idea Un saludo
-
0
Reacciones de usuarios
- 0 respuestas
- 2.1k visitas
-
-
Buenas tardes Agradeceré nuevamente de su ayuda Tengo un rango de valores que van cambiando, ya que están vinculado a una serie de operaciones. He confeccionado una fila auxiliar para que los errores de la fila anterior se conviertan en FALSO Lo que estoy buscando es: 1- una macro para borrar los datos de las celdas que dan error o 2-una macro para forrar los datos de la fila auxiliar con el texto FALSO Desde ya muchas gracias todos
-
0
Reacciones de usuarios
- 1 respuesta
- 2.1k visitas
- 1 seguidor
-
-
Buenas noches. Necesito su amable ayuda. tengo una base de datos con 4 columnas, comienza en a7(clave de producto), b7(familia), c7 (descripcion de producto) y d7 (unidad)...Ejemplo M0001, afine, afine de terreno, m2. Necesito la forma de filtrarlos escribiendo la familia en la celda C6. Y de paso, (al seleccionar el producto necesario, ya que puede haber cinco, tres, quince, tipos de afine, por ejemplo)asignarle algun mecanismo para enviarlo a otra hoja donde se va formando mi presupuesto o factura y que me permita ir escribiendo en la celda de abajo, para agregar otros productos. Aclaro, no se nada de macros y programacion. Es solo un programita para facilitarme mis…
-
0
Reacciones de usuarios
- 4 respuestas
- 2.1k visitas
-
-
Hola amigos: quisiera que me ayudaran con lo siguiente, tengo un listbox que carga unos datos, dentro de los que se encuentran las fechas lo que deseo es que por medio de un boton poder filtrar un rango de fechas, pero que al filtrar tome los datos del listbox previamente cargado y no de la hoja, y que idealmente lo muestre en el mismo listbox, sino aunque fuera en otro listbox. Gracias fechas.rar
-
0
Reacciones de usuarios
- 3 respuestas
- 2.1k visitas
-
-
hola tengo un problema, tengo datos desde A4:j4 y quiero que al presionar el boton, por medio de macro me copie los datos ingresados en las celdas mensionadas en una ubicacion mas abajo por ejemplo A9:J9. El problema que se me presenta es que en lugar de copiar los datos en forma horizontal (es decir de A9:J9), los copia de forma vertical (desde A9 para abajo). Este es el codigo, gracias Private Sub CommandButton1_Click() Range("A4").Select ActiveSheet.Unprotect Range("A4:J4").Select Selection.Copy Range("A8").Select '' [A65536].End(xlUp).Offset(1, 0).Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ …
-
0
Reacciones de usuarios
- 7 respuestas
- 2.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 sergio@ayudaexcel.com
Información adicional: Encontrarás más información en la política de privacidad.