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 resetcorporation,

    Aqui estoy otra vez, con este ya tengo 2 temas abiertos, el asunto es parecido al otro, pero no lo mismo. tengo un libro (lo adjunto) con 2 hojas, una es "datos" y la otra es "informe" en datos tengo la columna "a" que es donde esta el asunto, la columna "A" tiene los cargos: jefes, contables... etc de cada categoria tengo mas de una persona, su nombre en la columna "b" y mas columnas que son datos de estas personas tengo en el libro un modulo escrito por mi pero me falta lo principal, me interesa que genere informes por cargo, es decir, todas las filas que empiezen la celda de la columna "a" sea el mismo valor, pegue en su correspondiente lugar en el informe todos l…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.4k visitas
  2. hola diculpe q le moleste recien me estoy iniciando en programacion excel necesito saber como aplicar ruta relativa en excel osea tengo un video y logre incrustarlo en excel lo puedo ver con windows player pero cuando lo llevo a otra carpeta o computadora no me lo reproduce me dijeron que tengo q usar ThisWorkbook.Path o algo asi pero no logro de ningunamanera poder usarlo ejemplo mi archivo y video estan esta direccion : C:\Users\edu\Desktop\Nueva carpeta 3\video.mp4 C:\Users\edu\Desktop\Nueva carpeta 3\libro1.xlsx ahora Private Sub WindowsMediaPlayer1_OpenStateChange(ByVal NewState As Long) Workbooks.Open ThisWorkbook.Path & "\video.mp4" End Sub y no pasa…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.9k visitas
  3. Started by alfredoecija,

    Buenas tardes, tengo un libro con pedidos( cada pedido es una hoja) todos exactamente igual con el mismo formato , y quiero llevar una relacion de estos pedidos ( para eso la macro) , esta hoja la llamo resumen y siempre es la ultima. he creado esta macro con ayuda, pero no me funciona. Me pone que no se puede ejecutar codigo en modo interrupcion. ¿ que es eso? Ademas solo me saca 5 registros Sub alfredo() Application.ScreenUpdating = False destino = ActiveSheet.Name primvac = 100 For Each pestaña In Worksheets If pestaña.Name = destino Then GoTo otra: pestaña.Activate pedido = Range("q3").Value fecha = Range("q4").Value cantidad = Range("p29").Value importe …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 3.7k visitas
  4. Started by jechu85,

    Hola a todos, tengo una hoja exce que me gustaria que se abriera solo en los pc que yo autorice. me gustaria saber como hacer para que detecte la mac de la ethernet o serial del HHD y que esta la compare con una que yo le diga y si no son iguales que cierre la hoja excel. he estado mirando mucho y he visto como hacer para que me cierre excel y como detectar pero para que compare y haga una cosa u otra no se. este es el codigo para saber el numero de serie del HDD: Sub AveriguarNúmeroDeSerieDeDiscos() Set fs = CreateObject("Scripting.FileSystemObject") Set D = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName(drvpath))) MsgBox " Nº DE SERIE = " & D.serialnumber …

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.6k visitas
  5. Hola amigos, soy nuevo en el foro y me gustaria mejorar mis tecnicas tengo el siguiente problema, me gustaria con una macro filtrar solo datos numericos contenidos en una columna, ejemplo que me filtre "123456" hasta el momento solo he podido filtrar caracteres eje: "12N", pero si solo lleva numeros no me los busca.. la contraseña para desbloquear el proyecto VBA es: " katped" aqui esta el enlace para descargar el archivo Control de Pedidos.xlsm - 4shared.com - online file sharing and storage - download espero que me puedan ayudar Este es mi correo: [email protected]

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.2k visitas
  6. Started by matiasgil,

    Buenos días tengo una macro para mandar un correo avisando que se modifico, pero hay que ejecutar el macro para que funcione, busque en el foro pero no encontre esta solución especifica. Hay alguna manera que al guardar salga el correo automaticamente. Este es el macro que uso, pero no se como asignarsela al boton guardar, gracias. Sub Mail_small_Text_Outlook() ' Is working in Office 2000-2010 Dim OutApp As Object Dim OutMail As Object Dim strbody As String Set OutApp = CreateObject("Outlook.Application") Set OutMail = OutApp.CreateItem(0) strbody = "Ha habido una modificación en " & ThisWorkbook.Name & vbNewLine & vbNewLine & _ "" & vbNewLi…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1k visitas
  7. Started by alfredoecija,

    Buenas noches, necesito sacar de un archivo con 200 hojas aprox (que son facturas , todas con el mismo formato) un resumen de facturación con nombre cliente, fecha, número fra, importe, ... Como lo puedo hacer , no tengo ni idea de macros. Por favor ayuda!!! Y que sea fácil ...

    • 0

      Reacciones de usuarios

    • 15 respuestas
    • 2k visitas
  8. Started by filirojas,

    Hola a todos: Necesito de su ayuda para ver que estoy haciendo mal en la siguiente Macro: La hoja destino = INGRESOS La hoja fuente es FACT 005, son varias hojas y cada una de ellas representa una factura, la hoja de ingresos pretendo llevar sólo una sumatoria de cada una de ellas. Sub pasando_INGRESOS() Application.ScreenUpdating = False destino = ActiveSheet.Name primvac = 4 For Each pestaña In Worksheets If pestaña.Name = destino Then GoTo otra: pestaña.Activate Fecha = Range("e19").Value Recibo = Range("d19").Value Codigo = Range("d10").Value Nombre = Range("a11").Value Importe = Range("i29").Value Iva = Range("i30").Value RetIsr = Range("i32") RetIv…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.4k visitas
  9. Started by joelo,

    saludos a todos los del foro. nuevamente pidiendo de su apoyo, se trata de lo siguiente: en el anexo lo tome como apoyo para un desarrollo pero no puedo cambiar el filtro a otra columna, el archivo trabaja sobre la columna g, y lo que quiero que trabaje en la columna w, o en alguna otra que yo le indique dentro de la macro, de antemano gracias. lista con maccro Solido.zip

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 2.9k visitas
  10. Started by Salvador1,

    Tengo varios subtotales y quiero eliminar los de valor cero con sus respectivas celdas precedentes, ¿se podría hacer con una macro? Saludos. Subtotales.rar

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 2.2k visitas
  11. Started by mntbr,

    Espero y me puedan ayudar con lo siguiente: Tengo un libro llamado Reportes con muchas hojas con distinto nombre cada una de ellas (ventas enero, ventas febrero, cobros marzo, etc), exisitira la manera de ejecutar una macro para que a la hora de imprimir me imprima el numero de pagina consecutivamente de todo el libro, es decir que si la primer hoja contiene 8 paginas la hoja 2 que contiene 13 paginas me la numere apartir del numero 9, por consiguiente la hoja 3 iniciaria apartir de la numero 22 ( 8 + 13 = 21 ) Esto lo realizo manualmente configurando en el menu Diseño de pagina/Pagina e indicandole apartir de que numero quiero que la imprima (primer numero de pagina) p…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 7.9k visitas
  12. Started by aureliope,

    Hola a todos Tengo un problema con Excel y espero que ustedes me ayuden a resolverlo pues no sé si aplica alguna fórmula o tenga que actuar con una macro. Me explico. Tengo dos hojas de Excel. En la hoja 1 está la matriz. En la hoja 2, 3, 4, etc. está el reporte mensual que debo hacer. Quiero que en la hoja dos se anoten automáticamente todos los datos que requiero de las distintas columnas de la matriz (hoja 1). O sea que en el reporte en la columna “a”, a partir de la fila 10 se empiece a rellenar hacia abajo automáticamente la información que tengo en la matriz en la columna “a” a partir de la fila 9 y si no hay valor no aparezca nada en la celda correspondiente en …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.4k visitas
  13. hola que tal?, aqui de nuevo con mis dudas y esperando se me pueda auxiliar en esto y es que esta vez quiero hacer lo siguiente: Lo que Necesito hacer es que al estar escribiendo sobre un textbox (el cual obviamente esta dentro de un formulario) solo acepte: 1ro.- solo numeros o solo letras o los caracteres que yo desee 2do.- que al llegar al sexto caracter me ponga una " / " y posteriormente siga escribiendo solo y unicamente hasta el onceavo caracter. se que para poner la cantidad de caracteres permitidos es en la propiedad maxlenght, pero si quisiera saber manipularla mediante codigo No se si me di a explicar ponerdiagonalal5tocaracter.xls

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.9k visitas
  14. hola he visto como ponen un reproductor de windows media que logra tocar una melodia en una hoja de excel la cual no suele ser versatil y solo pueede tocar una sola melodia a la vez pero si seria bastante bueno el que lograra poner una lista de reproduccion para poder seleccionar la que uno quiera y por lo menos darle "siguiente" mediante formulario sin tener que estarlo sacando del explorador de windows que resulta tedioso y fastidioso,,,pero bueno creo que alguien me contestaria que simplemente ponga el reproductor en una ventana diferente y listo, pero mi idea es poderlo realizar desde excel

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.5k visitas
  15. Started by jabrajam,

    Buenos tardes a todos, Una vez mas recurro a vuestro conocimiento e imaginacion. Os explico tengo una tabla de datos que consiste en la descripcion de un producto y las siguientes filas de datos de ese producto, bien pues lo que necesito es insertar una fila antes y despues en blanco de cada descripcion de producto. Bien como mas vale una imagen que mil palabras os subo un ejemplo. La hoja original es qcomo lo tengo y la hoja bueno es como me gustaria que quedara, haciendolo de algun modo que no sea como lo he hecho yo una a una con insertar fila. Gracias por la ayuda por adelantado. insertar filas.rar

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 937 visitas
  16. Hola: Necesito eliminar las filas que contengan determinadas palabras en una columna concreta. Y quisiera poner en un rango (p.ej. A1:A5) las palabras a buscar. Las únicas condiciones son poder elegir la columna sobre la que buscar y que, con solo escribir una parte de la palabra (en A1:A5) -tanto en mayúscula como en minúscula- la macro funcione ¿Alguna idea? Adjunto ejemplo similar un 90%. Saludos Matriz de busqueda.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 803 visitas
  17. Started by eduar5,

    Buen día nuevamente, Agradeciendo y al mismo tiempo aprovechando la buena voluntad de ayuda. Necesito un código que realice lo siguiente: Que no pueda guardar si los primieros tres textbox se encuentran vacios y si por lo menos uno de los textbox tiene valor que sí me permita hacerlo, conseguí un cod. pero solamente me funciona con el textbox1. Otro punto sería condicionar los primeros textbox a que acepten solamente números, eso tomando en cuenta que en ellos he colocado un cód. que me permite sumar dentro de cada textbox. Por su ayuda muy agradecido. Condicional p G.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.8k visitas
  18. Buen día, es mi primera publicación en el foro, espero hacerlo bien. Estoy diseñando un libro para control de pacientes de una clínica y tengo una tabla a la que contínuamente se le ingresan nombres, datos y laboratorios correspondientes; al ingresar un nuevo nombre en la tabla se reordena alfabéticamente según fórmula, pero sus registros (datos) no se desplazan hacia abajo según la ordenación alfabética y según el nombre correspondiente. Quisiera que me asesoraran si es posible a través de una macro VBA lograr esta acción automáticamente dejando en blanco los registros de la nueva persona que ingreso. Espero haber sido lo suficientemente explícito; adjunto documento…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.1k visitas
  19. Hola a todos, este es mi primer post en esta comunidad, y seguro no va a ser el último. Mi consulta es la sisuiente: Tengo una HOJA en donde cada FILA son los datos de personas, y lo que necesito hacer un fichero con cada persona, o sea quiero saber como hay que hacer para que me imprima a cada persona en una ficha (miden 9cm X 15cm). Excel deberia tomar los datos de cada persona y enviarlos al buffer de la impresora y nada mas... nose si me expresé bien. saludos a todos y gracias!:stung:

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 922 visitas
  20. Started by FELIX,

    Hola a Todos. Nuevamente solicitando de su gran y valioso apoyo. Les comento, me he quedado en medio de mi proyecto, mi primer problema es que el listbox solo acepta hasta 10 columnas. Tengo un registro de ventas donde necesito realizar amortizaciones, he encontrado un proyecto en el foro y lo he adecuado al mio, mi problema es que mi registro tiene 20 columnas. 1° Necesito realizar amortización a una factura en particular, por lo que necesito buscarla y realizar la amortización en el registro que corresponde. 2° Colocar una macro para que en el texbox que indica "saldo" se registre el SALDO = Monto Cotización (-) Monto factura (-) Amortizaciones 3° Colocar en el La…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.1k visitas
  21. Started by xboxfile,

    Hola otra vez, hace poco pedí ayuda con un botón para que saliese un cuadro de búsqueda e inserción en un rango y me fue bien, pero ahora lo que quiero es ampliar ese rango y no lo consigo. Cambio un dato al código y no hay manera. Ahora me muestra el rango A4:K y quiero que me muestre A4:Q. El cambio lo aplico al texto en color rojo: Private Sub UserForm_Initialize() Set Calculadora = Sheets("Calculadora") Set Pantones = Sheets("PANTONES") K2.RowSource = "PANTONES!" & Pantones.Range("A4:K" & Pantones.Range("A" & Rows.Count).End(xlUp).Row).Address Texto_Change Texto.SetFocus End Sub El archivo que adjunté la otra vez lo he sobreescrito por lo que no p…

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 1.2k visitas
  22. Started by joloco,

    Acoplentar formato y macro hola amigos aca de nuevo con mi formato, miren toda la ayuda que me dieron aca en su momento me a funcionado perfecto pero ayer me surgio un problemita al ir a entregar un equipo de renta no encontraba a la direccion que anote en el formato y daba vueltas y vueltas porque no tenia como comunicarme con mi cliente, ustedes se preguntaran porque, porque en el formato no tenia un espacio donde colocar el telef. (un lapzo brutus), bueno ahora ya lo coloque, si pero requiero que cuando yo de click en el boton de nuevo cliente me aparesca el inputbox con nombre, dirreccion y telefono, y me los guarde en Datos_Clientes en las columnas de nombre, direc…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 713 visitas
  23. Started by commdp,

    Buenas, necesito resolver esta macro simple, voy hasta base definida con "nombre" y luego quiero que abra el formulario que está en "Datos"..."Formulario..." para que ingresen los datos por ahí. Pero se frena en ShowDataForm creo que esta macro es para 2007 y yo trabajo con el 2003. La idea es que se abra el formulario y se termine la macro. Sub auto_openForm() ' Activate the sheet that contains your database. Worksheets("Hoja3").Activate Application.Goto Reference:="base" ' Show the data form for the selected range. ActiveSheet.ShowDataForm End Sub desde ya muchas gracias.

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 4.7k visitas
  24. Started by ANANDA,

    Hola Seguro que es algo básico pero me estoy volviendo loca, mi nivel en macros es nulo. Tengo una hoja con datos en diversas columnas, incluídas celdas en blanco. Quiero que se copien todos los datos de las 4 columnas en una sóla, como valores (en el excel original son fórmulas; aquí son valores), eliminando las celdas en blanco. Y si hago una modificación en la hoja de datos, al volver a ejecutar la macro que elimine los datos del listado y genere los datos de nuevo. Dejo un ejemplo (o al menos eso creo). Espero que sea lo suficiente claro. Cualquier duda.... Muchas gracias Prueba.xls

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 956 visitas
  25. Hola, es la primera vez que intento hacer una macro. No se muy bien como explicar lo que necesito. Yo tengo una plantilla de excel con varias columnas Descripcion de un problema, la causa, y la solución entre otras. A la vez tengo varios informes en word que he de rellenar con los mismos campos. Lo que intento hacer es crear una macro (si esto fuese posible). Tengo 3 documentos de Word distintos con algunos campos iguales. Doc 1: Informe de no conformidad Doc 2: Informe de acciones preventivas/correctivas Doc 3: listado control reclamaciones Los campos que tienen en común son: Descripción del problema Causa Solución Se ha creado una tabla de…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.6k 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.