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. Started by David Diez,

    Buen Día: He hecho una macro para remitir estados de cuentas a clientes en forma masiva enlazando outlook con excel, en una hoja de excel he consignado los datos (nombre en la columna A, correo en la columna B y ruta del archivo a enviar en la columna C), está funcionando bien pero no adjunta el archivo adjunto de la ruta que doy, alguien podría ayudarme con esto, esta es la macro. Adjunto el excel con la data (sólo estoy probando con 2 datos, sin embargo pueden ser varios) Sub Send_Files() Dim OutApp As Object Dim OutMail As Object Dim sh As Worksheet Dim cell As Range Dim FileCell As Range Dim rng As Range With Application .EnableEvents = Fals…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k visitas
  2. Started by f9frank,

    Buenas, Quisiera que me ayudaran con mi proyecto, quiero hacer un formulario que llevará varias preguntas. Lo que necesito es que al meter una carga de datos (codigos de clientes) estos se vuelquen automáticamente al formulario, y despues de llenar la encuesta, darle al boton "guardar" y que me pase al siguiente registro de la carga. Es posible?

    • 0

      Reacciones de usuarios

    • 11 respuestas
    • 1.3k visitas
  3. hola a todos aqui tratando de hacer la siguiente tarea : lo que hago manualmente es lo siguiente: abro un archivo en una carpeta x , este archivo es en formato xls , luego abro otro archivo que es el archivo de formato especial que contiene 2 pestañas luego copio desde el archivo de la carpeta todo la hoja ,al archivo de formato especial despues seleciono la celda j2 de la pestaña Solicitud cliente del archivo formato especial, copio ese dato y luego me voy a la pestaña CSV COMMA DELIMITED , para despues guardar el archivo con el nombre de la celda J2 en formato csv delimitado a nivel gravador de macro me da este codigo, Sub es() ' ' es Macro ' ' R…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.3k visitas
  4. Buen día, Solicito su colaboración con lo siguiente: Tengo que traer una información de una base de datos con clientes para ajustar un informe con las ejecutivas manejan cada cliente. Yo tengo la información que que cliente mueve cada ejecutiva. Estaba extrayendo ya de la información pegada, con una macro los clientes de la ejecutiva "A" por medio de un filtro avanzado con los datos que tengo previamente de que clientes maneja esta ejecutiva "A" en el rango de selección del filtro avanzado. Hasta ahí no hay problema. Los datos que debe traer para este ejemplo son: Cliente de la ejecutiva "A", Semana del año "2015-8", Fecha de paz y salvo "0000-00-00" Tipo "Liq".…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.3k visitas
  5. Started by OLGAVA,

    Hola, Tengo la siguiente Macro: Sub enviar() Sheets("envios").Select ufila = Range("a" & Rows.Count).End(xlUp).Row For i = 1 To ufila If Cells(i, 7) = Cells(i, 1) Then Set parte1 = CreateObject("outlook.application") Set parte2 = parte1.createitem(olmailitem) parte2.To = Cells(i, 8) & ";" & Cells(i, 9) parte2.CC = Cells(i, 10) & ";" & Cells(i, 11) parte2.Subject = "Cumpleaños" '"Asunto" '"Cuerpo del mensaje" parte2.body = "Buenos días," & vbCrLf & vbCrLf & "Nos es grato comunicarles que es el cumpleaños de " & Cells(i, 5) & "." & vbCrLf & vbCrLf & "Un saludo." 'parte2. Attachments.Add Ruta &…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k visitas
  6. Started by xafel,

    buenos días foreros, en la misma aplicación del otro día estoy intentando poner un botón en la hoja información que una vez el usuario nuevo ya haya modificado los datos apague un botón del useform de acceso y active el que se queda definitivo, el primero activa la pagina información y el segundo activa la de registro que es la que se usa pero no soy capaz de que funcione, encambio me activa y desactiva las hojas sin problema, no me da ningún error por lo que no se por que no lo hace Sub DesactivarInformación() Worksheets("relación").Visible = True UserForm2.CommandButton2.Visible = False UserForm2.CommandButton2.Enabled = False UserForm2.CommandButton1.V…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.3k visitas
  7. Me encuentro tratando de crear una macro (es mi inicio con esto de las macros), que copie el formato y las formulas del rango base de celdas A2:E16 por cada rango de celdas J:K. Pero me hace falta completar el ciclo, solo he podido seleccionar el rango J3:K3 pero hace falta que considere Jn:Kn. Debe copiar también el rango J:K y pegarlo en las celdas de color rojo, todo esto en la hoja Forma. Sub Macro1() ' ' Macro1 Macro ' ' Range("A2:E16").Select Selection.Copy Range("A19").Select ActiveSheet.Paste Range("J3:K3").Select Selection.Copy Range("A20").Select ActiveSheet.Paste Application.CutCopyMode = False End Sub[/PHP] Prueba …

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.3k visitas
  8. Started by afigueroaf,

    Desde la ultima actualización de Windows, que el comando DataObj.PutInClipboard No funciona, a alguien más le pasó esto?, tiene solución? Gracias,

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.3k visitas
  9. Started by tejebest88,

    Buenas a tod@s, llevo varios días rompiéndome la cabeza intentando que me funcione esta macro. El tema es el siguiente, tengo dos hojas: - Datos - Resultados En la hoja “Resultados” necesito que me busque el dato de Cantidad para cada pieza, y para ello los requisitos son la hora y fecha. Lo que tiene que hacer la macro sería: - De la hoja “Resultados” - Coger el dato tipo de pieza. - Coger fecha - Coger hora - Ir a hoja “Datos” y buscar, con esos tres criterios la cantidad - Copiar ese dato de cantidad en la hoja “Resultados” Por ejemplo de la pieza A, el 19.05.2014 a las 7 tendríamos 10 piezas. Para el caso de la pieza B el 20.05.2014 a las 12 tendr…

    • 0

      Reacciones de usuarios

    • 12 respuestas
    • 1.3k visitas
  10. Hola, cada semana debo enviar una presentación con la información que tengo en excel, pero tengo que presentarla en ppt,y los datos no los quiero vinculados sino como mapa de bits, no se cómo hacerlo, si alguien me puede ayudar mil gracias. Adjunto un archivo base de excel, el real tiene unas 15 hojas con datos y gráficos. datos.zip

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
  11. Started by luismorma,

    Buenos días: Tengo el placer de compartir mis inquietudes con todos vosotros e intentar resolver una duda ("error 91"). Estoy intentando montar una base de datos en VBA. Os comento que en la columna "A" hay una fórmula (=SI(B2>0;FILA(A1);"")) para que me devuelva un items no repetido y poder seleccionar desde un listbox, pero a la hora de seleccionar el elemento a modificar o eliminar me da el error '91'. Mando imágenes del error por si hubiera alguna manera de resolverlo. Muchísimas gracias y un saludo muy fuerte. 'Activar la celda del registro elegido Private Sub ListBox1_Click() Range("A2").Activate Cuenta = Me.…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
  12. Buenas noches, espeor me puedan ayudar en esta ocasion estoy trabajando con una tabal especifica en la hoja DATOS, la idea es que cuando INGRESE, ELIMINE registros no altere los registros de las demas celdas que no pertenecen a la tabla he logrado agregar pero para eliminar me sale error, me da error al momento de ubicar la fila en especifico a eliminar. muchas gracias por su apoyo Copia de Guardar datos en Tabla.xlsm

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.3k visitas
  13. Buenas noches, hace unos días pedí una macro y gentilmente Gerson la hizo y funcionó muy bien en el ejemplo, el tema es que cuando lo quiero aplicar en mi archivo no funciona, tira el error "Se ha producido el error '1004' en tiempo de ejecución: error definido por la aplicación o el objeto" Pintando de amarillo la línea que pongo en negrita: Sub ARREGLAR() With Hoja2 'BD BOL VENTAS f = Hoja1.[E16] .Range(.Cells(f, "A"), .Cells(f, "K")) = Hoja1.[BF4:BP4].Value End With End Sub El problema será porque tengo 19 hojas en el libro y en el ejemplo hay solo 2? o por los nombres de las hojas?, no se. Probé agregarles más hojas al ejemplo …

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.3k visitas
  14. Started by pinoji,

    Hola colegas, buenas tardes y que tengan una excelente salud. Tengo un pequeño proyecto para controlar los comensales, pero necesito una hoja para llevar de manera manual las incidencias. ya tengo hecho todo, excepto que necesito en la Hoja Modelo, en la columna E me ponga una linea en la parte inferior de las celdas (Para Firmar), siempre que existan datos. Yo tengo este código: Private Sub BtnImprimirM_Click() Dim X As Long Application.ScreenUpdating = False Hoja10.Range("A4:D5000").Clear Worksheets("BD Alumnos").Range("A4:D5000").Copy Worksheets("Modelo").Range("A4") With Selection.Interior .Pattern = xlNone .TintAndShade = 0 .P…

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 1.3k visitas
    • 3 seguidores
  15. Started by FELIX,

    Hola Estimados Foristas Nuevamente solicitando su apoyo. He podido adecuar un proyecto que he encontrado en el foro pero, necesito mejorarlo a mi necesidad: 1.- Que el formulario se exporte a PDF 2.- Que el formulario al momento de imprimirlo se ajuste la pagina a A4 o me de una opción para configurar la pagina ya sea horizontal o vertical 3.- En el combobox "empleado" me sale error cuando borro el primer caracter o cuando no encuentra un código buscado, necesito solucionar este inconveniente y a la vez cuando no encuentre el codigo me salga el mensaje (msg box), "codigo no existe" Espero contar con su apoyo como siempre. A la espera de sus atenciones Slds. FELI…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k visitas
  16. Buenas a todos, lo que voy a preguntar aunque para muchos sea fácil creanme que lo he intentado de muchas maneras y googleado y no logro dar con lo que quiero. Tengo que hacer un reporte diario donde necesito insertar la formula de suma (no el valor, sino la formula), donde el inicio del rango siempre es J5 pero el fin del rango varía como pueden ser solo 2 o 3 filas, pueden llegar a ser hasta 40 filas. La ayuda que solicito es para via VBA poner en la siguiente fila en blanco de la columna "J" la formula de suma donde el rango comience en J5 y que mediante código determine cual es la ultima fila con datos de la columna J. Espero de su valiosa ayuda, desde …

    • 0

      Reacciones de usuarios

    • 12 respuestas
    • 1.3k visitas
    • 2 seguidores
  17. Hola. Necesito gran ayuda. Cópmo hacer una macro que se accione con doble click en una celda generando un envío de correo de outlook, con el campo para, asunto, y texto ya diligenciados, y con un pdf temporal adjunto que desaparece cuando se envía, y que tiene como rango fijo los rótulos de columna y un rango variable (que es el que voy a cambiar dependiendo de a quien se envia el correo) He visto macros que hacen esto, mas no sé como juntarlas en una sola macro. Agradezco cualquier acercamiento a la función. Gracias.

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 1.3k visitas
  18. Hola necesito saber como puedo hacer para insertar filas en el historico pero solamente segun la cantidad de filas que tengan datos en la hoja de la hoja (datos de entrada). Generalmente son 15 muestras pero en ocaciones son menos por eso quiero pasar solamente la cantidad que tengan datos ingresados. Adjunto Planilla. Muestra.xls

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 1.3k visitas
  19. Started by henrhy,

    Buenas tardes, Estoy haciendo un formulario para ingresar los datos del personal nuevo en una empresa. pero a partir del punto 3 es donde tengo problemas. Tengo una base de datos como se muestra en la imagen adjunta y de esta base tengo que jalar alguno campos. Ejm: Llega un trabajador nuevo Henry Guerra para el puesto de Asistente de Marketing, entonces al ejecutar el formulario: 1ro. Escribir el NOMBRE del personal Henry Guerra 2do. En GERENCIA, desplegar la lista y seleccionar Gerencia Comercial (hasta aqui la tengo clara) 3ro. En AREA, desplegar la Lista y solo aparezca las areas respectivas a Gerencia Comercial, tales como Gerencia Comercial, Marketing, Imagen…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k visitas
  20. Started by castañitp,

    Con mucha pena tengo que decirles que conozco muy poco de macros y es por ello que respuosamente les formulo esta pregunta. Siempre que copio una macho y al ejecutarla me sale el siguiene mensaje:" Error de Compilacion se esperava un End Sub" y me rasalda el Nombre de la Macro. Mis sistema Operativo es Windows 7 El Oficce es 2007 El Error se repite con todas las macros que copio El procedimiento que utilizo para copiar la macro es el siguiene: 1ª Abro un libro de excel 2ª Visual Basic 3ª Herramientas 4ª Macros 5ª Nombre de la Macro 6ª Crear 7ª Copio la Macro "Esta es una macro copiada" Sub MACRO7() Private Sub Worksheet_Change(ByVal Target As Range) If Ta…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
  21. Started by nonano,

    Hola.. estoy utilizando una macro de macro Antonio para ocultar y mostrar columnas.. sin embargo no se como acotar para que solo busque entre las columnas B y AT, ya que tarma mucho tiempo para recorrer todas las columnas de la hoja. saludos Option ExplicitSub OcultarMostrarColumnasMA(Optional ACero As Boolean = True, _ Optional Vacia As Boolean = True, _ Optional FilasIgnoradas As Long = 0, _ Optional ColumnasIgnoradas As Long = 0) 'Definimos las variables Dim Filas, Columna, Columnas, FilaInicial Dim ColumnaInicial, FilasVacias, Celda, x, y 'Determinamos rango de filas F…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
  22. Buenas tardes a todos; Una pequeña ayudita si es posible.. Quería borrar los datos de unas determinadas celdas al abrir el libro Excel. En la macro que he creado y adjuntado hace eso mismo pero debo estar situado en esa hoja para que se cumpla. Lo que me gustaría conseguir es que los borre esos datos sin que sea obligatorio estar en esa determinada hoja. Gracias y feliz año a todos. BORRAR.xlsm

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 1.3k visitas
    • 1 seguidor
  23. Started by Milenko Brzovic,

    Hola a todos! Tengo un problema. Me gustaría poder modificar una matriz. La idea es que según el rango que yo selecciono ( matriz), poder modificarla. Ejemplo, tengo una matriz de datos de números, y si es que la suma de los valores de las filas, y la suma de las columnas son iguales, que se modifique el valor de cada esquina de la matriz a uno definido por las sumas de las columnas y filas, ( lo que quiero hacer en concreto no tiene nada q ver con eso, pero es para dar una idea). Yo no soy un experto en VBA, por ahora he creado un par de funciones y procedimientos. Y para hacer esto se me había ocurrido hacer una función, pero tendría que devolver una matriz entera …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
  24. Started by afkael,

    Hola!! Estoy construyendo una planilla que me facilite una tarea que realizo con frecuencia.. Dicha planilla consta de dos hojas, la primera es una especie de carátula o resumen que tiene una tabla de 5 columnas, unos campos a completar (cliente, fechas, etc..) y un botón "buscar". La segunda es una hoja que contiene datos exportados de un archivo de texto mediante Datos/Archivo de texto, éste contenido se actualiza a diario. Lo que quisiera es realizar un macro que, al presionar el boton "buscar", recorra la segunda hoja y cargue a la tabla de la primer hoja los datos de las columnas especificadas y según cumplan los filtros que se han especificado (cliente, desde, ha…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.3k visitas
  25. Started by versaka21,

    Hola a todos, Tengo un archivo en .xlsx y me han encomendado convertirlo a XML a través de una macro, nunca se me había presentado algo parecido por lo que recién estoy investigando el tema. Actualmente tengo un ejemplo de como es un archivo .xlsx y su correspondiente XML, lo que me dicen es que el proceso tardan demasiado en hacerlo "manualmente" y quieren automatizarlo. Tengo alguna idea por lógica de programación de como hacer el proceso mas no tengo nada concreto aún. El archivo .xlsx que dejo aquí contiene una parte del archivo real, solo necesito saber como hacer esa parte para adelantar lo demás; las etiquetas tienen unas especificaciones, por lo cua…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.3k 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.