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
-
Muy buenas tardes estimada comunidad Me podrían ayudar con esta macro, Tengo una macro que me genera un reporte de inventario en un archivo excel, el archivo tiene códigos y formulas para la descripción de cada código, Ejemplo. Código - Descripción 001 Zanahorias. 002 Cebollas. 003 Tomates. 004 #N/A. La macro continua después de llenar los campos de "descripción por medio de formulas, lo que necesito es que, la macro me muestre un mensaje cuando no encuentre un código en la base de datos por ejemplo el código #N/A cuando encuentre este valor que me de un mensaje que me diga "Por…
-
0
Reacciones de usuarios
- 6 respuestas
- 1.1k visitas
- 1 seguidor
-
-
Hola a tod@s. Mi nombre es Carlos, programador durante más de 20 años y que dejó de serlo (profesionalmente) hace 10... La verdad es que hasta ahora poco me había tocado lidiar con EXCEL, pero ser el tuerto en el país de los ciegos de mi trabajo me ha llevado a tener que hacer "cositas" para facilitar el trabajo y la extracción de información de ficheros EXCEL. El caso es que tengo que buscarme la vida para que los usuarios introduzcan una serie de datos (alrededor de 40 por fila) para guardarlos en otra hola del mismo libro. a través de un formulario, userform o a base de controles activeX o de formulario. Muchos de los datos están relacionados con tablas …
-
0
Reacciones de usuarios
- 12 respuestas
- 909 visitas
- 2 seguidores
-
-
Hola estimados, nuevamente solicitando su ayuda. En este archivo quiero implementar una búsqueda inteligente en un ListBox (Fact1) aplicando entre dos rangos de fechas usando dos TextBox (Fech_InicioFact y Fech_FinalFact), con 2 condiciones; que sean de clase de Documento (DF) y que el Comité no sea Vigente. La busqueda inteligente o normal debe efectuarse al hacer Enter en el segundo TextBox (Fech_FinalFact) Para activar el formulario hay que hacer lo siguiente: Seleccionar celda A4("Cuenta") de la hoja Resumen Cart-Cli para activar UserForm1. Después haciendo click en cualquiera de las celdas de Cuenta en la columna (“A5:A57”) cargar de registros al UserF…
-
0
Reacciones de usuarios
- 4 respuestas
- 812 visitas
- 2 seguidores
-
-
Hola a todos, Estoy atascado en algo que debería ser sencillo, pero no lo consigo sacar por más que busco. Tengo un archivo el cual primero inserta 2 columnas a la derecha de una columna llamada "fRateBatcher"), después inserta unas formulas en las Offset(0 , 1), y después debe buscar donde el rango donde se han asignado las fórmulas (como ejemplo A3:B3) y copiar/pegar formula con ese rango variable hasta last row. Mi problema está siendo que no consigo encontrar el Range ya que el rango puede variar en columa, aunque no en fila. Este es el código que tengo ahora: Sub SANCMARC_Magic() Dim rng As Range Set rng = Range("A11:CDD11").Find("fRateBatch…
-
0
Reacciones de usuarios
- 1 respuesta
- 453 visitas
- 1 seguidor
-
-
hola tengo una duda, tengo varios libros de Excel ordenados de forma Numérica, cada libro de Excel tiene 4 hojas con su título y su información que puede varias en filas con información de uno a otro libro, quiero pegarlo en otro libro de Excel, como especie de un consolidado, pero de forma ordenada, es decir la información de la hoja 1 del libro 2, se copie y pegue debajo de la informacion de la hoja 1 del libro 1, la del libro 3 debajo de libro 2 y asi sucesivamente, quine pueda colaborarme con el codigo macro , Gracias de antemano
-
0
Reacciones de usuarios
- 2 respuestas
- 405 visitas
- 1 seguidor
-
-
Tengo un formulario con un TextBox para ingresar fecha. Solo digito números porque el guion se coloca automáticamente. El problema se presenta cuando quiero borrar carácter por carácter de derecha a izquierda no me deja por el guion. ¿Cómo podría modificar el código para que permita borrar de esa forma? Private Sub TextBox1_Change() If Bandera = False Then If Len(ActiveControl) > 10 Then ActiveControl = Mid(ActiveControl, 1, 10) MsgBox "lA fEcHa eStA CoMpLeTa" Else If Len(ActiveControl) = 2 Then ActiveControl = ActiveControl & "-" End If If Len(ActiveControl) = 5 Then ActiveControl = Act…
-
0
Reacciones de usuarios
- 4 respuestas
- 1.3k visitas
- 1 seguidor
-
-
Hola a todos, Para una simulación docente utilizo un archivo de Excel que contiene columnas pareadas de datos que forman grupos. Adjunto archivo con datos y código para se entienda mejor lo que tengo y lo que necesito. Con esos datos quiero: · Que en determinados puntos de cada par de columnas (mismo color) se permuten datos de forma aleatoria. · Que el resultado el proceso de permuta se copie en una nueva ubicación. · Que el proceso se realice para todos los grupos de datos hasta acabar. Que es lo que tengo: · He escrito una macro que realiza correctamente todo el proceso (está en el archivo y contiene comentario…
-
0
Reacciones de usuarios
- 7 respuestas
- 765 visitas
- 1 seguidor
-
-
Buenos días, ante todo disculpar si es un tema resuelto pero he buscado y no lo he encontrado, os cuento por si me podéis ayudar con una duda que no he podido resolver. Necesito acceder a los MSForms.CheckBox creados desde un modulo clase para bajar o subir su posición en el formulario , y quiero acceder a ellos utilizando su nombre y para ello utilizo el texto que se encuentra recogido en una hoja del libro. Por ejemplo a este, Public WithEvents TREINTA_Y_SEIS As MSForms.CheckBox En la celda de excel, Sheets("Datos").Range("A" & X).value, aparece el valor TREINTA_Y_SEIS Dim Evaluacion As MSForms.CheckBox Set Evaluacion =Sheets("Datos").Range("A…
-
0
Reacciones de usuarios
- 5 respuestas
- 799 visitas
-
-
Hola colegas, buenos días. Espero se encuentren bien de salud. Antes que todo ofrecer mis disculpas porque no creo que esta sea una plataforma para este tipo de escrito, pero no encuentro otra opción y quiero que el mensaje llegue. Me es difícil hasta escribir esto, pero por razones ajenas a mi voluntad voy a estar mucho tiempo (creo que bastante) fuera de este MARAVILLOSO FORO. (Ojalá esté equivocado) Los problemas que está presentando mi país, que todo es un verdadero desastre, sumados a mis problemas personales me han obligado a tomar tan dura decisión. Todo este tiempo ha sido muy provechoso para mí, he aprendido lo que nunca imaginé, he innova…
-
0
Reacciones de usuarios
- 3 respuestas
- 471 visitas
- 3 seguidores
-
-
Hola, necesito crear de alguna manera que los datos ingresados en una celda vuelvan a ser ingresados y si no es el mismo que se ingreso la primera ves genere error hasta que sea el mismo ingresado anteriormente
-
0
Reacciones de usuarios
- 2 respuestas
- 489 visitas
-
-
Hola a todos; Estoy intentando vaciar el contenido del portapapeles y no logro hacerlo. He usado esta instrucción y no me va. Desconozco otro método alternativo. Probé con la grabadora pero lo único que puedo conseguir es ocultar la ventana del portapapeles. Un saludo a todos. Libro1.xlsm
-
0
Reacciones de usuarios
- 2 respuestas
- 4.5k visitas
- 2 seguidores
-
-
Buenas noches estimados, recurro a ustedes por qué no encuentro solución a este problema: Tengo un formulario en VBA para registrar pacientes, tiene varios Textbox para rellenar, pero para el registro no se llenan todos. El asunto es que cuando se hace el registro y se envían los datos a una Tabla en Excel, algunos de los TextBox vacíos llenan la celda con algun caracter invisible que hace que Excel considere a la celda no vacía. Si selecciono esas celdas me hace un conteo, pero las celdas aparentemente no tienen nada. Les adjunto la tabla, el error se da en las celdas de los encabezados rojos, y el codigo del boton de registro. Para evitar este error he coloca…
-
0
Reacciones de usuarios
- 4 respuestas
- 974 visitas
- 1 seguidor
-
-
Buenas tardes, un gusto enorme ser miembro de este foro. Les pido su ayuda por favor, tengo cinco hojas y en cada una de ellas un rango y modelo de planilla diferente que se completan y se diferencian por fecha, la idea es que una vez que termino una planilla en la hoja, pueda copiar la misma planilla debajo de la primera ( pero vacia) y empezar el proceso de carga nuevamente, el problema es que no logro hacer que el foco del cursor se posicione en la primera fila de la planilla copiada y asi sucesivamente o en todo caso en la ultima fila de la nueva planilla copiada. Desde ya agradecido Remito codigo a modo de indicar lo que pretendo hacer Sub copiaryp…
-
0
Reacciones de usuarios
- 1 respuesta
- 373 visitas
- 1 seguidor
-
-
Hola vi un video de un archivo lo que hace el archivo de excel en el que de un pdf have un tipo de preview en un rango de celdas pero es un objet, que cuando le da dos clicks sobre este object se abre el pdf del que se tomo la informacion. Es muy interesante el como funciona, otro detalle es que seria genial si los previews de los pdf's fueran tomados de otros rangos de celda y no fuera desde el mismo codigo para un solo pdf. El detalle es que siguiendo las instrucciones no lo pude hacer funcionar, espero el video resulva algunas de las dudas que pude generar al tratar de explicar lo que deseo hacer, lo que hace el video esta mostrado en los primeros 15 o 20 segundos de…
-
0
Reacciones de usuarios
- 3 respuestas
- 471 visitas
- 1 seguidor
-
-
Estoy intentando imprimir un rango de hojas de un pdf en una ruta en concreto pero no me funciona. Imprime el ramgo pero del Excel en ve del Acrobat. Sub imprime() Dim rutaPDF As String rutaPDF = Sheets("Hoja1").Range("D2") F = Cells(2, 7) T = Cells(2, ? pid = Shell("C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe " & Chr(34) & rutaPDF & Chr(34)) Worksheets.PrintOut From:=F, To:=T DoEvents 'Paso 5 - Esperar que se Imprima el PDF hnd = OpenProcess(PROCESS_TERMINATE, True, pid) 'Paso 6 - Obtener el handle(manejador) del proceso(Adobe Reader) …
-
0
Reacciones de usuarios
- 3 respuestas
- 604 visitas
- 1 seguidor
-
-
Hola, para ocultar la cinta de opciones en el libro activo he utilizado el siguiente código, no obstante, aunque me permite pegar datos copiados entre hojas del mismo libro en las celdas desbloqueadas, cuando copio datos de otro libro se deshabilita las opciones de pegado. Private Sub Workbook_Activate() Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)" End Sub Os agradezco vuestra ayuda, muchas gracias.
-
0
Reacciones de usuarios
- 1 respuesta
- 416 visitas
- 1 seguidor
-
-
Buenas tardes, tengo el siguiente código, pero no sé qué instrucción necesito agregar para que pegue solo los valores de la celda copiada. Ya que me manda error de compilación, de antemano, gracias por la ayuda Sub FirstVisibleCell() With Worksheets("Seguimiento").AutoFilter.Range ActiveCell.Value2 = Range("C" & .Offset(1, 0).SpecialCells(xlCellTypeVisible)(1).Row).Value2 Selection.CurrentRegion.Select Selection.SpecialCells(xlCellTypeVisible).Select ActiveCell.Copy Destination:=Range("F1").PasteSpecial xlPasteValues End With End Sub
-
0
Reacciones de usuarios
- 4 respuestas
- 841 visitas
- 1 seguidor
-
-
Hola a todos, vengo en busca de su ayuda. Tengo una carpeta con varios PDF, quisiera listarlos en una hoja de excel, luego identificar los que tengan el mismo nombre y esos que están duplicados o que sean copias (por ejemplo: archivo.pdf y archivo(1).pdf o copiadearchivo.pdf) esos documentos que se llamen igual o sean copias que los pueda unir en un archivo de pdf en otra nueva carpeta. Ejemplo: 1.pdf 1(1).pdf 2.pdf 2.pdf 3.pdf 3(1).pdf 4.pdf Copia4.pdf ... Que la nueva carpeta contenga: 1.pdf [sería la unión de 1.pdf y 1(1).pdf ] 2.pdf [sería la unión de 2.pdf y 2.pdf ] 3p.df [sería la unión …
-
0
Reacciones de usuarios
- 1 respuesta
- 608 visitas
- 1 seguidor
-
-
Hola, tengo la siguiente tabla: date employee motive text 01/01/2022 PETER B baja 01/01/2022 MARY R ruta 01/01/2022 ANN R ruta 02/01/2022 PETER B baja 02/01/2022 MARY R ruta 02/01/2022 ANN R ruta 03/01/2022 PETER B baja 03/01/2022 MARY R ruta 03/01/…
-
0
Reacciones de usuarios
- 5 respuestas
- 726 visitas
- 1 seguidor
-
-
Buenos días a todos y gracias de antemano por su atención. Tengo una hoja Excel con varias pestañas: en la primera de ellas aparece una estructura y, en la segunda, una base de datos. En la mencionada estructura existen una serie de registros que son la "columna vertebral" de la base de datos. En la base de datos existen unos "ids" los cuales tienen que tener todos los registros de esa estructura. Sin embargo, por diversas necesidades, a veces es necesario cambiar esa estructura y, por ende, todos los "productos" de la base de datos. Al tener muchos registros (ids) en la base de datos se me hace casi imposible hacerlo de forma manual por lo que necesitaría …
-
0
Reacciones de usuarios
- 4 respuestas
- 556 visitas
- 1 seguidor
-
-
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
- 398 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
- 480 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.6k visitas
- 2 seguidores
-
-
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
- 607 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
- 599 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.