Saltar al contenido

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?

  1. Hola amigos estoy trabajando en una macro que me ayude a simplificar mi proceso en el trabajo aun soy nuevo en excel y acudo a su apoyo: trabajo con el mismo reporte solo que los datos cambian lo bajo del sistema al inicio de turno y al final, donde me piden * Saber que codigos ya no se encuentran en el primer reporte de acuerdo a su cantidad, porque el mismo codigo se puede repetir pero con otra cantidad * Saber la cantidad de los codigos que ya no estan en el primer reporte y colocarlo hoja "Reporte", Desde ya le agradezco por su ayuda y pertencer a esta comunidad Saludos de Lima-Peru Reportes.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 809 visitas
    • 1 seguidor
  2. Started by carluci,

    cordial saludo, señores, en la empresa donde laboro tengo que enviar todos los días los lotes de producción, lo que quisiera aprender es que cada vez que se crea una hoja del día quisiera que tomara las mismas observaciones si la orden es igual del día anterior. les agradezco su acostumbrada colaboración. gracias. lotes 2016.zip

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 809 visitas
  3. Started by A.Maurizio,

    Hola Marco en pocas palabras mi problema es el siguiente: En una hoja de Excel que creé en el juego del bingo. Después de que el uso de una conexión de esquema para cada replicado de la Tabla de símbolos para cada célula de mi Tómbola. Después de eso: he creado una fórmula que simplemente dice, que a su vez sale el número Ejemplo (1) es el color del rojo del símbolo Número 1 de la Tabla etc ..! Ahora el problema es el siguiente: A medida que el juego! Funciona bien, pero si se mira de cerca, se da cuenta de que hay algo que está mal, ya que la carta de si es de color rojo el número (1) o el número (80) y luego extraiga el número (10) o (15) etc ...! Extraer el núm…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 808 visitas
    • 1 seguidor
  4. Estimados amigos, acudo a ustedes solicitando por favor su ayuda con una macro, la cual necesito que compruebe la fecha de nacimiento y genere un número aleatorio que no se repita ni en próximas generaciones de aleatorios hasta que se agoten los números y vuelva nuevamente el ciclo, es decir: Que compruebe en el rango (“C6:C20”) la fecha de nacimiento y si: =< 30 años genere en la columna (“A”) un número aleatorio del 1 al 100 que no se repita =>31 hasta los 40 genere en la columna (“A”) un número aleatorio del 101 al 200 que no se repita Y mayores de 40 genere en la columna (“A”) un número aleatorio del 201 al 300 que no se repita Una vez que no haya más núme…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 808 visitas
  5. Buen día a todos, soy nueva en esto, he encontrado un archivo en uno de los foros el cual esta muy bueno pero uso Excel 2010 y me marca error aquí: Range("AG" & y + 1).FormulaLocal = "=CONTAR.SI(B" & y + 1 & ":AF" & y + 1 & ";" & """" & letra & """" & ")" como se puede solucionar esto. les adjunto el archivo muchas gracias. Control de asistencia II.rar

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 808 visitas
  6. muy buen dia tengan todos, mi pregunta es simple. ¿como puedo hacer para que me despliegue ya sea mediante msgbox las filas en donde fueron insertados los datos previos, es decir, despues darle click en el boton "insertar datos" me aparesca el informe o mensaje de lo que fue insertado? ojala me puedan ayudar al respecto de antemano gracias Form ejemplo.xls

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 808 visitas
  7. Started by Olvidado,

    Buenas tardes. Tengo un libro que los datos funcionan correctamente, lo que necesito es una macro que haga todo esto que pueden ver en el libro que adjunto pero poder eliminar las formulas y que la macro sea la que se encarge de hacer esto. Ejemplo: En la hoja CLIENTES columna I8 tengo esta macro: =SUMAR.SI(DATOS!D7:F2000;"ACANA";DATOS!F7:F2000) y pasa igual en todas las filas hacia abajo. La pregunta es ¿se puede hacer todo esto con codigo visual y así poder eliminar las formulas de la hoja? Y tambien en la Hoja datos tengo otra formula en la columna C :=CONTAR.SI($D$6:D7;CLIENTES!$D$2) ¿Tambien se podría hacer con codigo vb?. Lo que busco es evitar tener que poner…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 808 visitas
  8. Necesito hacer una lista de clientes partiendo de varias hojas de excel, usando varias celdas. Anexo un archivo de ejemplo, pero el real tiene 100 hojas. HACER LISTADO DE CLIENTES.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 807 visitas
  9. Started by falexramos,

    Buenas tardes Saldudos a todos los maestros de este foro, la presente consulta tiene lo siguiente. tebgo un archivo que se llama reporte ahi hay 4 hojas, la hoja de recibido y procesado el usuario es "alejo". la hoja de procesado es "Favian" y la hoja de enviado el usuario es "Julyp"., en el otro libro reporte tienda, solo basta que ejecuten la macro desproteger. La consulta es la siguiente como puedo mejorar el codigo para que las hojas no queden tan pesadas. (no se si son las formulas). La otra consulta es en libro reporte a tienda en la columna (I) deseo saber los dias habiles sin contar los sabados, domingos, y los dias que son festivos en el mes. (en la hoja2 los…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 807 visitas
  10. Buenas tardes, Me gustaría que me ayudaseis a crear una macro con las siguientes características: Cuando pones una o más palabras (un texto y no un valor) en una celda determinada, te da acceso a otra hoja de Excel. Sin la introducción de las palabras correctas, no se puede abrir la hoja (es como una especie de contraseña). Tiene que ser válido para más de una combianción de palabras (hay más de una contraseña correcta). Muchas gracias

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 807 visitas
  11. Buenas tardes He logrado exportar los datos de una hoja de excel a otro libro nuevo(Genera Reporte) el problema es que necesito exportar solo los que tengan una condicion. (BOTON EXPORTAR) ejemplo en una base de datos tengo en la columna "H" el numero de semana correr una macro que me detecte y exporte solo las filas que tengan la semana seleccionada. ADJUNTO ARCHIVO PARA SU AYUDA CAPTURA TRANSFER 2014.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 807 visitas
  12. Este tema lo habia iniciado en excel general pero nunca recibí respuesta. mas o menos lo que quise explicar y he adelantado es sobre la busqueda y poner un check que me indique que ya está revisado. Les paso el archivo para que vean mas o menos lo que quiero. El archivo original que subi primero se llama ¨para Foro´´ el otro el que pongo como ejemplo de lo que quiero se llama ´¨Prueba´´.. Gracias de antemano. Prueba.xls Para Foro.xls

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 807 visitas
  13. Saludos cordiales amigos de Ayuda Excel Tengo un archivo que en el tiempo se va a hacer grande, Inicialmente la hoja la hice con 20.000 filas, pero prefiero iniciar el archivo con 100 o 200 filas de información y a medida que sea necesario, copiar la fila QUE ESTARÁ OCULTA y pegarla al final del ultimo dato existente, unas 500 veces, y a medida que sea requerido, ir insertando mas filas. Anexo archivo de ejemplo. Gracias PRUEBA INSERTAR 500 FILAS.xlsm

    • 1

      Reacciones de usuarios

    • 5 respuestas
    • 807 visitas
    • 2 seguidores
  14. tengo un archivo que toma en cuanta un rango de impresión de las celdas "A1" a la "MX" (La X en rojo puede ser un valor variable de "M11" hasta "M2511") y de ahí se salta a la "A2512" a la "M2516", la intención es que si se corta a media pagina de impresión ese ultimo salto se elimine... Gracias.

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 806 visitas
  15. Started by monicasusi,

    Saludos A todos: Pues que tengo un problemita que no he podido resolver, si alguien me puede ayudar se agradecera de antemano Paso a Explicar: Tengo una hoja que se llama Datos que va de la Columna A a la Columna BI y en filas tiene casi 6000 en la Columna P se puede poner Pagada, Cancelada, Devolucion, Gestor o Juridico y en base a ella se pinta la fila, no con formato condicional sino con formato manual, he creado 5 hojas mas con los nombres Pagada, Cancelada, Devolucion, Gestor y Juridico, puedo seleccionar y copiar de manera manual una fila y pasarla a la hoja correspondiente, pero pense que con una macro seria mas rapido de hacer, ya que se haría de manera…

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 806 visitas
  16. Started by axl666,

    Que tal a todos Tengo tres cuadro combinados en la Hoja1 y en la Hoja2 tengo las infmacion que necesito manejar Lo que quiero hacer es lo siguiente: Primer cuadro combinado (combo1) tomando los datos de la columna A de hoja 2 Segundo cuandro combinado (combo2)tomando el valor del primer cuadro combinado filtrar la Hoja 2 y solo me muestro lo filtrado El ter cuadro combinado (combo3) que me muestre la informacion solo filtrando con los valores de cuadro combinado uno y dos Y por otro lado Mi cuadro combinado se llama combo1 Se que para ingresar de las columna de los cuadro combinados es con la siguiente instruccion: combo1.column(1) Como puedo hacer para asigna…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 806 visitas
  17. Started by teoista,

    Hola mi duda es sobre selección de rangos. ¿Para poder seleccionar un rango la hoja donde se encuentra debe estar seleccionada/activada? Lo he intentado mientras estaba seleccionada otra hoja de esta forma: Sheets(«Datos»).Range(«A1:A5»).Select Pero da error, para evitarlo solo se me ocurre, seleccionar la hoja previamente: Sheets(«Datos»).Select Range(«A1:A5»).Select No se si hay alguna forma de hacerlo sin seleccionar previamente la hoja, para que sea un proceso mas rápido. ¿Seria lo mismo si pongo .Select ó . Activate; cual es la diferencia entre ambas? Por otro lado; ¿Todo lo anterior es extrepolable a otros procedimientos?, por…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 806 visitas
  18. Started by naubp,

    Buenas, estoy intentando hacer un programa VBA el qual me coja un valor ya establecido aleario, por ejemplo en "A1" y este colocarlo dentro de una formula: valor(C1)=A1*B1 con tambien B1 conocido,para que me de el valor en C1. El problema que tengo es que dentro de la formula quiero que B1 me varie hasta B100... valor(C2)=A1*B2.. etc y una vez tengo los 100 valores que me salte a la siguiente celda A2 y repita la operacion: valor(C101)=A2*B1. Hasta A1000.... tendre C100000 celdas. Con macros no se como utilizar la funcion For dentro de ellas. Y hay algun problema si uso C(1000*10000)=C(10000000) me lo va aceptar Excel? Mi programa lo tengo hecho: y me sale error pero…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 806 visitas
  19. Started by Bcordero,

    buenas tardes saludos Expertos, queria comentarles que estaba creando un codigo en el cual despues de una cantidad de datos (revisando que sea un producto y de ahi vaya a otra columna y ponga su nombre ) llega a un numero y busque el nombre de otro vendedor y continue haciendo lo mismo, pero da la casualidad que estaba creando el codigo de acuerdo a la base de datos, pero realmente si la distribucion de nombres seria distinta (x lo que se aprecia es orden alfabetico, pero si cambia) mi codigo genera error podrian ayudarme adjunto archivo no puedo mostrar el código porque es muy grande. gracias Saludos Brian ayudaDatos.zip

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 806 visitas
  20. Buenas noches y felices fiestas a todos He estado buscando una macro de como poder imprimir copias de una misma hoja pero con diferentes pies de página, y aquí no supe encontrar nada relacionado. ejemplo: 1ª copia..... Copia departamento RECAMBIOS 2ª copia..... Copia departamento LOGISTICA Conseguí desde otra web código para hacerlo efectivo y creo que es interesante para cualquiera que tenga mi misma necesidad. Sub Imprime_mi_hoja() Dim Departamento, n As Byte Departamento = Array("RECAMBIOS", " LOGÍSTICA") For n = LBound(Departamento) To UBound(Departamento) With Worksheets("hoja1") With .PageSetup .PrintArea = "$a$1:$G$19" .LeftFooter = "Copia para " &…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 806 visitas
  21. Started by Bitxobilbo,

    Lo primero saludaros a todxs y desearos un feliz anio (perdon pero no tengo enies en el teclado). Lo segundo presentarme ... soy nuevo en el foro y lo he encontrado cuando estaba buscando una macro para que se me abriera el cuadro de dialogo de "Guardar como" y que me pusiera como nombre del archivo el valor de la celda I11. La cuestion es que encontre esto que parecia funcionar a la perfeccion: ... se abre el cuadro de dialogo, aparece el valor de esa celda como nombre del archivo, me permite elegir la carpeta de destino, peeeero cuando le doy a guardar ... NO GUARDA NADA!!! :upset: Si me pudierais echar una mano, seguro que es una tonteria, pero tampoco es que sea m…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 806 visitas
  22. Hola foreros! Les cuento que es lo que deseo hacer: Tengo un archivos con 2 hojas... En la primera consta el padrón de personas de mi ciudad (nombre, DNI, domicilio, etc) con 35000 registros. En la segunda tengo el listado de socios de mi empresa (nombre, DNI, domicilio, etc) con 10000 registros. La idea es separar todos aquellas personas que no forman parte del listado de la empresa para luego ofrecerles los servicios. Dada la falta de información (por ejemplo, muchos DNI faltantes) tendría que hacer la comparación con los nombres. Como entiendo algo de Excel he intentado utilizar la funcion BUSCARV con el atributto "verdadero" (dado que los nombres no son exactam…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 805 visitas
  23. Started by Salvador1,

    Hola. A raíz de ver una macro (ver abajo) que abre determinados documentos (doc, txt,...), me ha surgido una pregunta: ¿Hay alguna manera de listar las rutas de todos los programas ejecutables (o al menos los más habituales) que tenga en el ordenador (notepad, winword, excel , etc)? Sub abreDoc() Dim Archivo As String Archivo = Application.GetOpenFilename() Shell "winword.exe " & Archivo, 1 End Sub[/PHP] Saludos.

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 805 visitas
  24. Started by marcosagm,

    Buenos días, he estado revisando el tema de datos duplicados o filtrado pero no he podido adaptarlo a lo que requiero y por eso solicito de su ayuda. Tengo una base de datos a la que llame Siniestros donde registran número de pólizas y los siniestros que ocurren, y otro donde hago la consulta de los datos de esa base. Lo que requiero es que el archivo donde haga la consulta por Contratante me muestre todos los siniestros que tenga, he utilizado una macro de filtrado pero solo me hace el filtro si la base está en el mismo archivo, espero me den alguna sugerencia para resolver mi problema. Anexo los archivos de ejemplo. Gracias. Mostrar Duplicados.zip

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 805 visitas
  25. Started by pepe1970,

    quiero utilizar combobox con sql server, encontre este archivo en el foro. pero no se como cambiar la conexion de acces a sql server Combos dependientes SQL.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 805 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 [email protected]

Información adicional: Encontrarás más información en la política de privacidad.