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
-
Hola Buenas Agradecería mucho su ayuda Busco copiar datos de un libro a otro, en este caso se llama [Exhibit Esc1.xlsx]1. Mina (Nombre de libro y pestaña) La problemática surge que son muchas celdas las que debo copiar y lo debo hacer con varios libros diferentes, entonces debo cambiar esa dirección de origen en todo. Mi idea es dar un valor de variable a la dirección de origen para luego solamente cambiar la variable. Dejo un ejemplo de como me funciona y lo que quiero hacer Saludos Funciona así: Sub Report2() Range("D22").Select ActiveCell.FormulaR1C1 = "=SUM('[Exhibit Esc1.xlsx]1. Mina'!R21C5:R21C7)" Range("…
-
0
Reacciones de usuarios
- 1 respuesta
- 382 visitas
-
-
Hola a todos; -Estoy trabajando con dos InputBox y no se sí realmente está bien lo que adjunto. Funcionar si funciona pero desconozco si es del todo ortodoxo o hay otro método mejor. Buen día a todos. 2Input.xlsm
-
0
Reacciones de usuarios
- 5 respuestas
- 463 visitas
-
-
Hola Amigos buenas tardes, ¿De casualidad alguien ha hecho consulta desde Web service de tipo POST desde Excel?
-
0
Reacciones de usuarios
- 8 respuestas
- 1.5k visitas
- 2 seguidores
-
-
Buenos días a todos de nuevo. Busco ayuda en este asunto porque voy muy perdido. Tengo un archivo con dos hojas, "Principal" y "CargaWeb". En la hoja Principal quiero traerme las filas de CargaWeb donde los datos no se repitan en Principal. Pero el primer problema es que la hoja CargaWeb no siempre tiene las columnas en el mismo orden. Aunque es cierto que los títulos que necesito en Principal están en CargaWeb. He creado un fichero de muestra y veréis que en Principal hay muchas columnas, las que está coloreadas son las que necesito rellenar. Es decir tengo dos problemas, uno que los datos no se han de repetir (en este caso por ejemplo PROVEEDOR y NUMERO DE DOC…
-
0
Reacciones de usuarios
- 6 respuestas
- 961 visitas
- 1 seguidor
-
-
Buenos dias amigos mios, porfavor como seria una macro en excel que me empieze a numerar celdas: 1ro: Que la macro pida Prefijo, ejemplo: Item 2do Que la macro pida Numero inicial, ejemplo: 78.00 3ro que la macro pida una constante, ejemplo: 0.02 4to empezar la numeracion en un celda cualquiera: Celda C4= Item 78.00 Celda B5= Item 78.02 Celga G10= Item 78.04 y asi susecivamente, hasta finalizar con un esc.
-
0
Reacciones de usuarios
- 4 respuestas
- 599 visitas
- 1 seguidor
-
-
Hola, necesito que me ayuden con este planteamiento. Necesito cargar desde una Hoja de Excel a tres ListBox todos los registros de Cuenta seleccionada de la Hoja Resumen Crat-Cli (Columna A) que encuentre en la Hoja CartolaCli (Cuenta, Razón Social, Vencimiento, Monto o Importe). Estoy usando el método FIND para una búsqueda más dinámica. En cada ListBox se deben cargar por Clase de Documento: Factura (DF) Nota Crédito (DN) Transacción (DZ-AB-DD) En el caso de Factura están separado la suma de su importe de acuerdo a la fecha de vencimiento. -Si la deuda ya venció mayor a 30 días. -Si la deuda ya venció entre 1 y 30 días. Me sale error al cargar los r…
-
0
Reacciones de usuarios
- 13 respuestas
- 574 visitas
- 1 seguidor
-
-
Buenas tardes, necesito, por favor, una macro para que cuando yo tenga una base de datos con muchas fechas e introduzca una nueva fecha que esté repetida, aparezca un mensaje que diga "esa fecha ya está usada" Muchas gracias!!!
-
0
Reacciones de usuarios
- 1 respuesta
- 656 visitas
- 1 seguidor
-
-
Hola a todos; -¿Es posible trabajar con símbolos usando formularios? En la macro que adjunto cargo el símbolo en un TextBox al pulsar un botón, esto sucede porque previamente lo he insertado. Lo que quiero conseguir es que al pulsar ese mismo botón yo inserte dicho símbolo que tenga almacenado en una "variable o Label" sin necesidad de tener que cargarlo de dicha hoja. Adjunto macro con detalles. Saludos a todos MCaracteres.xlsm
-
0
Reacciones de usuarios
- 3 respuestas
- 845 visitas
- 1 seguidor
-
-
Buenas tardes, Necesito un libro de excel en la que con una macro, copie una hoja las veces que sean y que lo nombre del 01 de enero hasta el 31 de diciembre. Es posible??? os adjunto archivo en el que tengo la macro pero nombra a las hojas con números. muchas gracias prueba.xlsm
-
0
Reacciones de usuarios
- 4 respuestas
- 602 visitas
-
-
hola ingrese esta formula en vba y por alguna razon si utilizas la misma formula en una celda, si tienes el resultado en toda la columna, osea si se aplica sin problema; pero cuando lo hago en codigo se aplica en algunas celdas de la columna y en otras arroja un 0, como si no existiera resultado... no se que sucede que hice mal... alguien me puede explicar. Private Sub Worksheet_SelectionChange(ByVal Target As Range) uf = Range("A" & Rows.Count).End(xlUp).Row With Range("B2:B" & uf) .Value = _ "=XLOOKUP(1,(espejo[Orden Number]=A2)*(espejo[role aprobador]=""capataz""),espejo[nombre approbador])" …
-
0
Reacciones de usuarios
- 20 respuestas
- 809 visitas
- 1 seguidor
-
-
Hola nueva,ente colegas. Profesor JSD, como le explicaba, ayer en la noche estuve haciendo algunas validaciones en el sistema, pero en la revisión me di cuenta que en el TxtPrecio me está multiplicando el valor por 1000. Cuando te remites a la Hoja Tarifario, en la Fila 160 vas a encontrar el precio de este servicio (Factura 21 - Playa Paraiso) Servicio Mtto Impresora Laser que es a $ 420.00, sin embargo el precio lo pone a $ 42 000.00. Adjunto archivo. Profesor, disculpe tantas molestias, en verdad me siento apenado. Un saludo cordial profesor. Mis respetos. Pino Facturación BM v6.0.0 JSD.xlsm
-
0
Reacciones de usuarios
- 7 respuestas
- 658 visitas
- 2 seguidores
-
-
Buenas tardes Foristas, espero se encuentren bien de salud. Necesito la ayuda de ustedes (una vez más). Voy a extenderme un poquito, pero creo necesaria la explicación. Ofrezco disculpas de antemano. Por mi país, cuando a una persona le vienen encima muchas cosas malas decimos, “A perro flaco todo lo que le caen son pulgas…” y algo parecido me ha tocado. Una de mis compañeras de trabajo está embarazada y tiene problemas de amenaza de aborto y la ingresaron en una clínica, hasta que dé a luz y entre una cosa y otra esto se tomará 1 año y tanto y me ha tocado hacer su trabajo, lo malo es que con el mismo salario que tengo hasta ahora (nada de aumento). Bue…
-
0
Reacciones de usuarios
- 33 respuestas
- 1.7k visitas
- 2 seguidores
-
-
Tengo un archivo de Excel con macros para una gestión de biblioteca en la cual he agregado un ListBox para buscar usuarios en una tabla "Usuarios", necesito que después de realizar la búsqueda, al hacer un doble click en un registro desplegado en la lista, posicione el cursor en la tabla y en la celda de la primera columna del registro seleccionado con el doble click, esto es lo que tengo: Private Sub TXTBusqUsuario_Change() NumeroDatosUsuarios = Hoja2.Range("B" & Rows.Count).End(xlUp).Row Hoja2.AutoFilterMode = False Me.LBXUsuarios = Clear Me.LBXUsuarios.RowSource = Clear y = 0 For fila = 8 To NumeroDatosUsuarios Descripcion = Hoja2. Cells(fi…
-
0
Reacciones de usuarios
- 10 respuestas
- 1.2k visitas
- 1 seguidor
-
-
Buenos días colegas. Espero se encuentren bien de salud. En el Sistema de Facturación que he estado trabajando y que el profesor JSD me ha estado ayudando necesito hacer algo que realmente no encuentro cómo hacerlo. Yo Guardo las Facturas en PDF en un a carpeta (D:\Facturación\Facturas), pero cuando necesito hacerle una modificación (FrmModificarFactura) a una Factura "X", necesito que me sobre escriba el archivo ya existente pero con los cambios que se le haya hecho a dicha factura. Intenté hacerlo con el condicional IF, pero parece que algo no estoy haciendo correctamente y necesito resolver este problema. Ejemplo: Yo confeccioné la Factura Nº 16 Fincimex…
-
0
Reacciones de usuarios
- 6 respuestas
- 868 visitas
- 2 seguidores
-
-
Hola a todos Intento que esta macro me proteja todas las hojas y me active el autofiltro en todas las hojas, pero solo me activa el autofiltro en la hoja activa, en el resto no. ¿Me podeis ayudar? estoy bloqueado... Sub Proteger_libro() On Error GoTo fin Dim sht As Worksheet Application.ScreenUpdating = False ActiveWorkbook.Protect ("contraseña") For Each sht In ActiveWorkbook.Worksheets If sht.Visible = True Then sht.Protect ("contraseña") ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _ , AllowFiltering:=True End If …
-
0
Reacciones de usuarios
- 1 respuesta
- 620 visitas
- 1 seguidor
-
-
Hola... podría alguien ayudarme a extraer el valor seleccionado en una segmentación de datos y obtenerla en una celda de excel? Muchas gracias
-
0
Reacciones de usuarios
- 3 respuestas
- 5.8k visitas
- 2 seguidores
-
-
Hola a todos, he puesto un control de errores en un procedimiento y se duplica el mensaje de error dos veces y no se porqué lo hace. El procedimiento es este: Sub InsertarTabla() On Error GoTo Etiqueta Dim nTabla As String nTabla = ActiveSheet.ListObjects(1).Name ActiveSheet.Range(nTabla & "[#All]").Select Selection.Copy Etiqueta: If Err.Number = 0 Then 'Correcto ElseIf Err.Number = 9 Then 'No sé porque repite dos veces el mensaje, si no hay ninguna tabla debe destildar el check MsgBox "No hay ninguna tabla, operación cancelada", vbCritical, "Mensaje" UserForm1.CheckBox1.Value = False '---> Si comen…
-
0
Reacciones de usuarios
- 12 respuestas
- 498 visitas
- 1 seguidor
-
-
Combinar celdas iguales en fila - macro Hola, tengo una necesidad, que llevo varios días buscando solución pero no he logrado encontrar en la web ninguna macro que me pueda ayudar. Ya estoy algo desesperado, ojalá me podáis ayudar. Tengo una Carta GANTT con los días en una fila, las semanas en otra fila y el mes en otra fila. Para poder automatizarlo he puesto en cada celda de la semana o mes, una fórmula. Lo que necesito es que cuando clique en un botón se unan todas las celdas, tanto de la fila semana como de la fila mes, que estén seguidas y sean iguales (es posible que haya semana 23 de distintos años, por eso necesito que una solamente las celdas que están s…
-
0
Reacciones de usuarios
- 8 respuestas
- 746 visitas
- 1 seguidor
-
-
Hola, me gustaría hacer un excel en el que las casillas de verificación se colocaran en una fila y en la fila inferior mostrara el resultado TRUE o FALSE. Arrastrando las casillas no es posible hacerlo y he encontrado buscando un módulo pero es para hacerlo en columna. ¿Se podría hacer lo mismo pero como yo lo quiero? Decir que no tengo mucha idea de VBA. Esto es lo que he encontrado. Sub LinkChecks() 'Update by Extendoffice Dim xCB Dim xCChar i = 2 xCChar = "B" For Each xCB In ActiveSheet.CheckBoxes If xCB.Value = 1 Then Cells(i, xCChar).Value = True Else Cells(i, xCChar).Value = False End If xCB.LinkedCell = Cells(i, xCChar).Address i = i + 1 Next x…
-
0
Reacciones de usuarios
- 3 respuestas
- 1.2k visitas
- 1 seguidor
-
-
Hola, tengo la siguiente duda, necesito pasar de columna a fila de manera masiva, ejemplo: Lo que tengo: 4321; A04 4321; A03 4321; A04 8765; A01 8765; A02 8765; A03 Y lo que necesito es: 4321; A03; A03; A04 8765: A01; A02; A03 Son varios códigos distintos (4321, 8765q), con distintos datos que cambiar de columna a fila, ocupar la función trasponer me ocupara mucho tiempo.
-
0
Reacciones de usuarios
- 3 respuestas
- 1k visitas
- 1 seguidor
-
-
Hola a todos al final hay parte dos. En esta segunda parte necesito saber el nombre de las imágenes y almacenarlo en los textBoxs que he creado, evidentemene en el evento Click. -¿Como?: Primero evaluamos que estén todos vacíos y si es así al hacer Click en la primera imagen se pondrá en el textBox1 el nombre de la imagen y siguiendo este hasta completar los cinco textBoxes. -¿Qué pasa si cambiamos de imagen?: Pues borramos el nombre de la imagen en el textBox correspondiente y almacenamos en él el nombre de la nueva imagen seleccionada. He probado con el ciclo For Each pero no sé cómo hacerlo cuando tengo que hacer los cambios. He gra…
-
0
Reacciones de usuarios
- 6 respuestas
- 662 visitas
-
-
Hola, ¿hay alguna macro o forma de automatizar este proceso? Estoy usando esta extensión gratuita de Email Extractor para conseguir correos electrónicos de los sitios web: https://chrome.google.com/webstore/detail/email-extractor/jdianbbpnakhcmfkcckaboohfgnngfcc El problema es que para hacer el scrape (en este caso copiar y pegar esos E-Mail ID's) tengo que visitar cada pestaña...¿hay alguna manera de configurar una macro para que visite cada pestaña/url de sitio web y copie y pegue los emails de cada pestaña/sitio web para no tener que hacerlo manualmente?
-
0
Reacciones de usuarios
- 1 respuesta
- 395 visitas
- 1 seguidor
-
-
Hola a todos buenos dias, estoy tratando de encontrar una forma optima de traerme todos los nombres de una columna y convertirlos a una array, para almacenarlos en una variable... actualmente estoy copiando, pegando y trasponiendo, los datos, luego los concateno y los agrego ahi recien a la variable. esta accion es totalmente manual, hecha con la grabadora de macros, ...existe otra forma de poder hacerlo? lo que me interesa es traerme los nombres de los encabezados de las columnas y traerlos a un variable como arreglo, o array, pero lo que necesito tener en cuenta es que me vienen muchos archivos y no siempre tienen las colunmas el mismo orden, y a veces t…
-
0
Reacciones de usuarios
- 5 respuestas
- 1.1k visitas
- 1 seguidor
-
-
Saludos a todos. Muy brevemente me presento como una persona ya jubilada que me entretiene y distrae programar macros en VBA para Excel. El problema que trato de consultar en este post es el siguiente: En una macro dentro de un formulario intento acceder a una tabla en una hoja de su correspondiente libro , y no tengo problema alguno. El problema aparece cuando ejecuto la misma macro pero el libro activo -que no contiene ninguna hoja con la tabla que se intenta accesar- es otro diferente. Entonces obtengo el error siguiente : "Error en el metodo 'Select' del objeto 'Worsheet'. Creo que se produce porque el libro activoal ser otro, y no ppoder encontrar la Hoja …
-
0
Reacciones de usuarios
- 6 respuestas
- 675 visitas
- 1 seguidor
-
-
Hola a todos, necesito ayuda. Estoy probando una macro que se ejecute a determinada hora, pero no logro que funcione. Este es el codigo de prueba: Sub hola() MsgBox ("hola") End Sub ------------------------------ Sub programada() Application.OnTime TimeValue("13:59:00"), "hola" End Sub Llega la hora indicada y la macro "hola" no se ejecuta Debo activar algo en algun lado o considerar alguna zona horaria? El archivo es de Excel for Microsoft 365 y están en el onedrive. Mil gracias!!!
-
0
Reacciones de usuarios
- 6 respuestas
- 1k visitas
- 1 seguidor
-
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.