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 compañeros del foro, Tengo el siguiente problema de novato con el presente array que he creado: Este es el código: Option Explicit Option Base 1 Sub adminTemp() Dim admin As String admin = Array("...", "...", "...", "...", "Administrador", "Conectado", "...", "...") Dim fila As Long fila = Sheets("CONEXIONES").Range("A1048576").End(xlUp).Row Dim columna As Byte For columna = 1 To UBound(admin) If Sheets("CONEXIONES").Cells(fila, columna).Value = admin(columna) Then Sheets("CONEXIONES").Rows(fila).Delete Shift:=xlUp Next columna End Sub En otras palabras, me dice que el problema está en la declaración de la …
-
0
Reacciones de usuarios
- 3 respuestas
- 2.7k visitas
-
-
Hola, un saludo a tod@s. Mi consulta es muy sencilla (o no) pero no he visto nada relacionado con esto por Google, quizás desconozco las palabras exactas. Me explico, quiero eliminar una fila entera de una array de varias columnas de forma similar a como lo hace nativamente Excel, que seleccionas unas celdas, botón derecho, Eliminar, y el te desplaza todas las de debajo arriba. He probado con un bucle y subir todo lo de debajo arriba una fila copiando datos, pero lo veo demasiado, y puede que haya algún comando o algún método que lo haga y yo lo desconozca. Espero haberme explicado con claridad. No subo ejemplo porque mi pregunta es más bien teóri…
-
0
Reacciones de usuarios
- 6 respuestas
- 6.5k visitas
- 1 seguidor
-
-
Hola buenas tardes, para solicitar de su valioso apoyo, encontré un ejemplo en el que se hace una búsqueda de información y el resultado se muestra en un listbox, posterior acople el código a mi macro y la fui delimitando para que funcionara como yo lo necesito, sin embargo después del ultimo cambio y que funcionaba al 100% el código y me sacaba el reporte impreso en PDF de los resultados encontrados, ahora solo crea una hoja en PDF con los encabezados de las columnas pero sin información dentro de estas, no sé porque lo hace, comparto el código: Private Sub ExportaPDF_Click() Application.ScreenUpdating = False Application.DisplayAlerts = False On Error Resume …
-
0
Reacciones de usuarios
- 0 respuestas
- 644 visitas
-
-
Hola a todos. Tengo una serie de datos (4,872) que contienen cadenas de texto a los cuales hay que suprimir espacios intermedios. He intentado con las funciones Suprimir, Reemplazar y no lo he logrado. Igualmente. con la opción Buscar y reemplazar sin éxito. Las cadenas de texto tienen esta estructura: 00: 01: 04,600 --> 00: 01: 09,599 El espacio que hay que suprimir es el que se encuentra después de los dos puntos (:), es decir, que debe quedar así; 00:01:04,600 --> 00:01:09,599 Aspiro a que alguien me ayude con una macro que me permita hacer esta tarea y, para el efecto, adjunto un archivo con una muestra. Muchísimas gracias. FORMATO.xlsx
-
0
Reacciones de usuarios
- 2 respuestas
- 6.1k visitas
-
-
Buenos dias, expertos recurro asus conocimientos para perdirles una ayuda, tengo un formulario llamado "FormHorarioMañana" para asignar horario y consultarlo los datos de la hoja llamado "VoluntarioRelacion", estando en el formulario debo desplegar el combobox y me lista los nombres y cuando seleccione una de ellas me debe mostrar en los recuadros del textbox el nombre del area dependiendo del dia y la hora, por favor me ayuden gracias por su tiempo por anticipado. Ajunto el archivo. Horario.xlsm
-
0
Reacciones de usuarios
- 6 respuestas
- 722 visitas
- 1 seguidor
-
-
Hola, espero estén bien. Me surge el siguiente inconveniente en mi trabajo. Tengo una base de datos de artículos (unos 500.000) el cual necesito "depurar" ya que el sistema de gestión tiene varias condiciones que hay que cumplir para su importación desde un libro de excel. La primer columna (Código) tiene las siguientes condiciones: Máximo de caracteres (16) Acepta letras mayúsculas y minúsculas de A - Z y números de 0 - 9 Acepta SOLAMENTE el carácter especial / NO admite espacios La segunda columna (Descripción) tiene las siguientes condiciones: Máximo de caracteres (255) Acepta letras mayúsculas y minúsculas d…
-
0
Reacciones de usuarios
- 8 respuestas
- 1.4k visitas
- 1 seguidor
-
-
Cordial saludo: por favor a quien me pueda colaborar y compartir su conocimiento, le estaré muy agradecido ... Tengo un formulario con un listview, el cual deseo que me calcule la columna " SUBTOTAL ", de acuerdo con los registros filtrados . ya poseo el mismo formulario pero con un listbox y lo deseo implementar y saber el procedimiento para adaptarlo pero con la herramienta de listview. Nota: Anexo los dos formularios para mejor comprensión de lo que requiero. Mil gracias . prueba_filtrarPorFecha_Listviewcalcular1 - copia.xlsm
-
0
Reacciones de usuarios
- 2 respuestas
- 1.1k visitas
- 1 seguidor
-
-
Hola, Tengo una duda con Excel que no sé cómo resolver, y aunque llevo varios días buscando por internet, no encuentro la solución, espero que alguien pueda ayudarme. Tengo un libro de Excel con los datos de nuestros clientes (nombre, dirección, código postal y población) y tengo varios libros donde tengo que rellenar los datos de cliente. Quiero saber cómo puedo automatizar este proceso, ya que tengo muchísimos clientes y quiero saber cómo rellenar estos datos sin tener que teclearlos cada vez. Me han comentado que se podría hacer con una macro, pero yo no tengo ni idea de macros. Lo único que he conseguido es crear una lista desplegable por cada campo, una para nomb…
-
0
Reacciones de usuarios
- 4 respuestas
- 2.7k visitas
-
-
Buenas, tengo una duda y busque la respuesta por lo menos 1 hora y no la consegui, se que aqui me ayudaran El tema es que tengo un UserForm donde modifico/edito una base de datos que esta en Excel, mi codigo es el siguiente: Private Sub cmdModificar_Click() Sheets("Clientes").Activate If txtCliente = "" Then MsgBox "Debe agregar un Cliente para continuar", vbExclamation, ":: RENATRUC ::" Me.txtBuscarCliente.SetFocus Else op = MsgBox("Está modificando el Cliente: " & txtCliente & ", ¿Desea continuar?", vbYesNo + vbExclamation, ":: RENATRUC ::") If op = vbYes Then u = Hoja2.Range("A" & Rows.Count).End(xlUp).Row With Hoja2.Range("A1:A"…
-
0
Reacciones de usuarios
- 4 respuestas
- 2.2k visitas
-
-
Hola Gente, ¿como les va? Necesito ayuda con una macro. Tengo una tabla compuesta por una serie de nombres de alumnos y datos personales y deseo desde otra hoja del libro hacer referencia a un numero de legajo e indicar un porcentaje de inasistencias; y que una macro busque el numero de legajo indicado e inserte el valor en la misma fila, en la columna correspondiente a las inasistencias. Realmente no se como hacerlo y agradecería muchisimo si me ayudaran con esto... Desde ya, muchas gracias... Saludos desde Rosario, Santa Fe, Argentina...
-
0
Reacciones de usuarios
- 1 respuesta
- 1.5k visitas
-
-
Buenos días a todos. Llevo varios días intentando realizar lo siguiente con unas hojas de excel, pero no he sido capaz: Tengo varios miles de registros de pacientes de nuestro hospital en una hoja excel, con varios campos (número de historia clínica, edad, sexo, centro de salud de referencia etc...). Estos datos los hemos sacado de la base de datos de nuestra historia clínica electrónica. El problema es que en muchos de los pacientes hay datos incompletos, es decir, por ejemplo falta el centro de salud, o falta el médico habitual. Cada paciente además puede tener más de un registro, correspondiente a cada una de las visitas a urgencias, ingresos hospitalarios etc... …
-
0
Reacciones de usuarios
- 3 respuestas
- 2.2k visitas
-
-
necesito un código para copiar la fila de la celda sobre la que estoy situado y a continuación me coloque en la columna A. Gracias de antemano copiar fila.zip
-
0
Reacciones de usuarios
- 1 respuesta
- 930 visitas
-
-
Buenas Noches a Todos: Tengo una matriz de datos, simple, que otras personas diligencian, y se me ocurre que para evitar que cada uno de los registros sea modificado conforme a la conveniencia de cada persona, deseo escribir en una celda (en cada registro o fila del registro), en el formato de Fecha y Hora, (now()), el valor, al momento de escribir el primer dato en la celda del registro, pero que inmediatamente lo tenga y se calcule el valor now(), este valor quede inmodificable, asi puedo saber la fech y hora de creación del mencionado registro. Muchas Gracias !
-
0
Reacciones de usuarios
- 1 respuesta
- 794 visitas
-
-
hola buen día Estoy programando en excel con Vba y tengo una duda, el ejemplo es el siguiente estoy trabajando con dos libros en excel y en un tercer libro tengo que consolidar la información de los otros dos libros, quiero crear una macro que me tome los valores de la siguiente forma libro 1 [TABLE=class: grid, width: 500] [TR] [TD][/TD] [TD]cola[/TD] [TD]colb[/TD] [TD]colc[/TD] [/TR] [TR] [TD]flia1[/TD] [TD]a[/TD] [TD] dip[/TD] [TD]prop[/TD] [/TR] [TR] [TD]fila2[/TD] [TD]b[/TD] [TD]dip[/TD] [TD]prop[/TD] [/TR] [TR] [TD]fila3[/TD] [TD]c[/TD] [TD]dip[/TD] [TD]prop[/TD] [/TR] [TR] [TD]fila4[/TD] [TD]d[/TD] [TD]no[/TD] [TD]prop[/TD] [/TR] …
-
0
Reacciones de usuarios
- 2 respuestas
- 1.2k visitas
-
-
buenas tengo unas dudas y queria saber si me pueden ayudar a aclararmelas, queria preguntarles como es la estructura del codigo para lanzar mensaje de "faltan datos", en varias condiciones: 1- de un formulario que envia los datos a un userform para mostrar un resumen de ellos (cosa que intente pero a pesar de que me tira ventana de error me aparece el userform de resumen) 2- de un formulario a una hoja de excel tomando en cuenta que hay combobox textbox y optionbox que cambia la propiedad visible a un combobox NUEVO BANANA AUXIACTIVOS 3.rar
-
0
Reacciones de usuarios
- 0 respuestas
- 826 visitas
-
-
HOLA. Me podrian colaborar en esta ocacion con una macro para lo siguiente: Quiero ejecutar el siguiente mensaje "Revierta las anteriores retenciones, y registre esta como la retencion mensual". Simpre que se cumpla para una misma cedula lo siguiente: 1- Que la cedula este dentro de la base de datos 2- Que la fecha de la factura (mes y año) esten tambien dentro de la base de datos 3- Que la retencion sea mayor a las anteriores que estan en la base de datos, ( esto es, mayor que 1, porque en la celda b3 trae el acumulado del mes). Adjunto un ejemplo. exitos!!!! retenciones acumuladas.xls
-
0
Reacciones de usuarios
- 0 respuestas
- 626 visitas
-
-
Hola buen dia foro, he aqui una utilidad que encontre en otro foro, pero que necesito hacerla mas eficiente ya que es muy lento el uso del libro y no tengo el conocimiento suficiente para modificar el codigo a algo mas facil. Limitante: - no puedo instalar nada extra en mi ordenador del trabajo por eso la necesidad de usar este aporte. - que en lugar de usar un textbox sea en la celda donde se ingrese el cogido a convertir a codigo de barras - que se pueda hacer para unos 100 registro o mas de una vez Adjunto el archivo para que si alguien puede optimizarlo o hacerlo mas eficiente, ya que son varios registro que necesito convertir a codigo de barras para iniciar un n…
-
0
Reacciones de usuarios
- 5 respuestas
- 2.8k visitas
-
-
Buenos días a todos, de un recién llegado al foro y a la programación en VBA. Ando liado con una macro que me esta dando problemas, no en la ejecución sino en la velocidad. Se va volviendo progresivamente mas y mas lenta en su ejecución. La macro consiste en reunir en una sola tabla datos desde varias. Pero varían su numero de filas. Todo va bien hasta que empieza Buscarv. Este es el código que estoy utilizando para ello. 'para la busqueda Range("Q2").Select ActiveCell.FormulaR1C1 = "=VLOOKUP(RC16, OFFSET(Hoja2!R2C20,0,0,COUNTA(Hoja2!C20),2),2,False)"[/CODE] 'para el autofill lastrow = Range("P2").End(xldown).Row range("Q2"). Autofill Destination:=…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.2k visitas
-
-
Hola amigos, Lo que necesito es muy sencillo pero soy novato y no tengo ni idea. En la hoja inicio hay un botón que es un formulario, quiero que cuando se rellene, demos al botón Agregar y los datos se pongan en la Hoja Base de Datos. Tengo un campo que está apartado que es de Seleccionar, no sé como agregar para seleccionarlos, me gustaría que me lo pusierais en plan ejemplo y que aparezca en la columna AA. Muchas gracias y perdonad mi ignorancia en este mundo. Un Saludo Hoja Inscripción Esc.xls
-
0
Reacciones de usuarios
- 1 respuesta
- 788 visitas
-
-
Estimados necesito ingresar notas y quiero se desbloqueen 3 columnas en cierto tiempo puede ser por un mes, son 8 periodos, he revisado en estos blog parecidos pero no me funcionan envío archivo... NOTAS.rar
-
0
Reacciones de usuarios
- 0 respuestas
- 580 visitas
-
-
Hola a todos, La duda que tengo es como hacer recorrer un rango por ejemplo (A1:A5) en el siguiente ejemplo: Function Revo(A1:A5, y) For f = 1 To 100 Tiwr = (1 + f * (A1 / y))*(1 + f * (A2 / y))* ... *(1 + f * (A5 / y)) If Tiwr > wer Then wer=Tiwr If wer=Tiwr Then t=f Next f Revo = t End Function Lo que quiero es que me de la f que hace maximo el valor de Tiwr que depende del rango A1:A5 y y. Gracias
-
0
Reacciones de usuarios
- 0 respuestas
- 1.4k visitas
-
-
Buenos días a todos; Necesito que me ayuden como hacer para llenar una columna de excel extrayendo datos de una base de datos. Ejm. CODIGO DESCRIPCION 0121 Sueldo Basico 0909 Asignación Familiar 0506 Horas Extras .........Etc. las lista es larga es mas de 100 items En la hoja 1 tengo: A B C D TIPO DCTO NUMERO CODIGO MONTO 01 41189808 0121 1000.00 Quiero que en la celda C1 x decir me aparezca una lista con el cuadro de codigo y descripcion, que me permitta hacer busqueda digitando la iniciales de la descripción (reconozca caracteres) y al elegir por decir 0121 sueldo basico lo digite en c1 SOLO EL CODIGO (0121), para c2 hacia adelante previa elección. NOTA: A…
-
0
Reacciones de usuarios
- 0 respuestas
- 703 visitas
-
-
Buenas tardes. Estoy varado en este dilema, tengo una rutina para copiar 2 hojas de un libro de 30 y se abra el dialogo de mover o copiar hojas a un nuevo libro y al aceptar se abre el dialogo de guardar como , después se exporta el archivo a PDF y por ultimo se cierra el libro nuevo creado,.......mi problema es que si le doy cancelar (por que me equivoque en algo) al dialogo de mover o copiar hojas, la macro sigue corriendo y me crea un caos, me borra vínculos etc..... como puedo detener la rutina si le doy cancelar a ese dialogo??, es posible??? Esta es mi Rutina: Sub ImprimeCot_10() Application.ScreenUpdating = False Sheets(Array("Forma10", "NP10")).Select Sheet…
-
0
Reacciones de usuarios
- 4 respuestas
- 1.8k visitas
-
-
En el libro excel adjunto hay cinco hojas. En la quinta hoja llamada ELEMENTOS COMUNES TABLAS tengo unos datos en la columna A y B y en la columna D y E. Lo que quiero saber en cada par de columnas es qué datos de la columna A están en la columna B y qué datos de la columna D están en la columna E. Utilizo una transacción que debería responder a los criterios e indicar de forma correcta los posibles elementos comunes pero el hecho es que cuando comprubeo los datos seleccionados me encuentro que en ocasiones los datos seleccionados en la Columna A y D no están respectivamente en la columna B y E. No sé si es un fallo en la fórmula, en el formato o de otra índole, algui…
-
0
Reacciones de usuarios
- 3 respuestas
- 1.2k visitas
-
-
Buenas Tardes! Ya me han ayudado previamente y espero que con esto tambien lo hagan, se los agradeceria con el alma enserio. Tengo un archivo central (Lo llamo Auditoria Real) que contiene todos los gastos por departamentos de la compañia donde laboro y estoy creando una herramienta por dpto, para que el administrador de estos pueda visualizar los gastos que ejecutan en su area. Ahora bien, este archivo central es generado mensualmente por lo que cada mes se generan codigos de cuentas de gastos nuevos (Cada razon de gasto obtiene un codigo, Ejplo: 51406 - Gasto por articulos de escritorio). En mi herramienta, como punto de partida coloque los gastos al mes de octubre d…
-
0
Reacciones de usuarios
- 3 respuestas
- 720 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.