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. Buenos días Tengo un proyecto que consta de varias hojas en donde se guardan los datos capturados desde formularios. El problema está en que quiero restringir el acceso a dichos formularios con diferentes permisos: Es decir: El Administrador: tendrá acceso total a formularios, hojas y VBA El Usuario A: tendrá acceso sólo a los formularios Clientes y Pedidos El usuario B: tendrá acceso sólo al formulario Facturas Las únicas hojas que siempre estarán visibles son PORTADA y FICHAS, las demás hojas permanecerán ocultas cuando se abran los formularios. Había pensado colocar en la hoja auxiliar oculta (CONTROL), los usuarios, contraseñas y formularios de accesos, pero no …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 772 visitas
  2. Started by Gaspar GP,

    He visto varias macros que realizan esta macro, incluso tengo un excel con esa macro incorporada y funciona. Pero cuando copio y pego esas macros a mi excel siempre me sale error 438 donde se especifica la fecha de la cita. Lo único que busco es un botón que cree una cita/tarea en outlook y que tome de dos celdas de mi excel los datos asunto y la fecha con hora. Gracias

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.2k visitas
  3. 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
  4. Started by jose antonio,

    FELICES FIESTAS, y que los Reyes Magos os sean benignos. Os deseo los mejores parabienes a partir de este año 2015 A lo nuestro. Hacia el año 2009 conseguí en este foro un calendario, que para mí es excelente en mi desarrollo cotidiano, siendo deciros que no sé quien fue el autor. Pero si lo lee gracias. Desearía ya que mis conocimientos son muy escasos, si podeis ayudarme . En el calendario se vienen coloreando los días disfrutados de vacaciones Me gustaría llegar a poder colorear los días de ausencia, permisos y enfermedad Agradeceros vuestra cooperación y un saludo CalendVac.v2.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 638 visitas
  5. Started by eugeniocol,

    Hola buenas. Después de acabar de montar una hoja con sus fórmulas correspondientes, como ya me temía es más que súper lento abrir el libro casi imposible. La única solución que veo es cambiar las formulas por una macro, claro de esto ni idea solo usar un poco la grabadora y poco más. Estaría muy agradecido a que alguien me ayudara. Como podréis ver en el libro las formulas van desde W4:ADT 1199 la plantilla en las primeras filas en colores para dar una orientación en T4:U 1199 se ve hasta donde llega. Gracias de antemano de nuevo. Salud2. CONTAR COINCIDENCIAS 3 FORO.rar

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.1k visitas
  6. Started by yagopons,

    Hola. Actualmente estoy utilizando una macro para filtrar contenidos pero como la base de datos se ha hecho bastante grande tarda mas de cinco minutos en ejecutarla. Sub Borrado_Articulos_filtro() Dim FILAFINAL As Long Dim X As Long Sheets(1).Select FILAFINAL = Sheets(1).Range("A" & Rows.Count).End(xlUp).Row For X = FILAFINAL To 2 Step -1 'VALORES COLUMNA H If Sheets(1).Cells(X, 8) = "CG346A" Then Cells(X, 1).Select Cells(X, 1).EntireRow.Delete End If If Sheets(1).Cells(X, 8) = "ARTICULO 1" Then Cells(X, 1).Select Cells(X, 1).EntireRow.Delete End If If Sheets(1).Cells(X, 8) = "ARTICULO 2" Then Cells(X, 1).Select Cells(X, 1).EntireRow.Delete End If…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 700 visitas
  7. Hola Extraordinarios miembros del Foro, un palcer saludarle este Año Nuevo Espero que este año este colmado de muchas bendiciones y logros en su vida para cada uno de ustedes escribo por que tengo un problema y la verdad no sé ni por dondé empezar a resolverlo,por ello pido su ayuda por que ustedes son extraordinarios en estos temas. es que tengo una base de datos de produccion(Hoja Pro) y de la cantidad de materia prima que se utilizó para producir(Hoja MaP ), esto considerando cada una de las plantas de transformación. de estas dos hojas consolido los datos en otras hojas(dependiendo en que planta se ha procesado) si es que se ha procesado en la planta 1 en la…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 724 visitas
  8. Started by somar,

    hola muy buenas tardes, gracias por la ayuda quiero que me ayuden en el reporte por fechas desde hasta, tengo la hoja registro la datos, en la hoja detalle quisiera que haga el reporte por fecha ya que tengo el formulario atte somar ControlV4.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1k visitas
  9. Estoy intentando crear una macro para modificar los filtros de una tabla dinámica con Excel 2007. Con el siguiente código: Worksheets("TV").PivotTables("Tabla dinámica1") _ .PivotFields("Regulation Start Day").PivotItems("02/01/2013").Visible = False me da el siguiente error. ¿Alguna idea?????

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k visitas
  10. Tengo esta macro para que al pisar una celda SOLO del rango B14 a B23, me abra un formulario Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'If Intersect(Target, Range("B14:B23")) Is Nothing Then If Intersect(ActiveCell, Range("B14:B23")) Is Nothing Then 'Target.Range ("B14") BUSQ_FACT.optProEntr.Visible = False BUSQ_FACT.optProEntr.value = True BUSQ_FACT.Show End If 'If Target.Column = 2 Then BUSQ_FACT.Show End Sub[/CODE] Soy muy malo en estas cosas de macros y otros He usado otras lineas de codigo pero algunas me funcionan mal, otras no me funciona y otra funciona pero cierro el form y se vuelve a abrir solo, y lo repite una y otra …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 746 visitas
  11. Started by gabotopuro7,

    Estimados, favor su ayuda. resulta que mediante ado accedo a un servidor y una base de datos especifica, pero por un codigo accedo a un procedimiento de la base de datos, entonces desconosco las tablas a las que hace referencia dicho procedimiento, y no logro realizar bien la consulta para obtener el codigo del procedimiento, uso la siguiente forma: "exec sp_helptext " & "'" & "[nombre de base de datos].DBO.[nombre de procedimiento]" & "'" [/CODE] pero no me resutla o nose si lo escribo bien, y ademas nose como rescatar la respuesta y como tratarla en el excel. saludos y gracias

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 565 visitas
  12. Started by angel-elda,

    Muy buenas, espero me puedan ayudar por que me estoy volviendo loco! Estoy realizando un pequeño programa en excel, este cuenta con una pagina que contiene una tabla con los datos de los productos del stock. En la pagina principal atraves de un formulario cargo otro formulario con un listbox que esta enlazado a esa tabla, en dicho formulario tambien hay 4 textbox en los cuales aparecen los datos del item que selecciono en el listbox. Tambien tengo dos botones de comando : Modificar y Eliminar Registro. El Problema radica que si yo modifico por ejemplo la cantidad del item seleccionado y presiono Modificar, No modifica nada sigue apareciendo lo mismo que antes y si qui…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2.6k visitas
  13. Pues mi consulta y duda y problema es como puedo hacer para lograr desde Excel 2010 que es con el que trabajo al abrir el internet explorer al llegar a una pagina web especifica me muestra un mensaje web o cuadro de respuesta ACEPTAR o CANCELAR de esas mini ventanas que se sobre montan en el explorer y por decirlo asi bloquean el explorer hasta selccionar una 1 de 2 opciones, quisiera con un codigo VBA o algun comando que no logro encontrar por ahora.... que la misma asumiera ACEPTAR sin necesidad de hacer Click en los Botones de Cancelar o Aceptar.... es muy similar como cuando estamos en hotmail o gmail de descargar un dato adjunto de cada mail nos da la opcion de desc…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k visitas
  14. Started by BRN0,

    buen dia necesito porfavor un macro consecutivo cada 9 celdas hacia abajo observando que la celda seleccionada a la derecha no alla nada o este llena ejemplo.. pero me para en llenar ya la cuarta y mas necesito su colaboracion consecutivo cada 9 celdas.rar

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 641 visitas
  15. Buenas a todos, Soy nuevo en el foro, tengo el siguiente código que me funciona perfectamente en versiones anteriores a Excel 2010 (para hacer login en una página web, no puedo indicarla por razones de seguridad), sin embargo, soy incapaz de hacer que funcione para esta versión de office. Más concretamente me da error cuando entra en "ie.Document", ¿alguien me podría decir cómo hacer que funcione? Código: Private Sub WEB_Click() Dim ie As Object Dim login_name Dim password Set ie = CreateObject("InternetExplorer.Application") With ie .Navigate "**URL**" .Visible = 1 Do While ie.Busy Loop End With Do While ie.Busy Loop With ie.Document DoEvents Applicat…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k visitas
  16. Started by argosmx,

    Saludos amigos del foro, no se si nuestros grandes amigos puedan compartirnos un poco sobre la posibilidad de hacer una macro en excel y que pueda vaciarse en hojas de cálculo de Google Sheets. Creen que esto sea posible? pongo este tema para ver si entre varios logramos por decir... mmhhhh... un inventario de almacén por ejemplo ó una forma de pedidos de tiendas a un almacen central... o la idea que ustedes tengan. La meta sería que a traves de una macro podamos vaciar y recopilar datos de una hoja de google sheets. desde ya gracias por sus aportes.... Por cierto, FELICES FIESTAS DE FIN DE AÑO Y UN PROSPERO 2015

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 729 visitas
  17. Started by LeFuet,

    Buenas, una vez más recurro a vosotros antes mi más absoluta inutilidad para conseguir nada serio en esto de las macros. En esta ocasión intento copiar varias celdas desde una hoja a otra, la idea sería que las copiase en la primera fila libre que encontrase en la "Presupuesto", es decir, la primera fila sin ningún dato en ninguna de las columnas. Por ahora he conseguido esto que os pongo, el problema es que me copia los datos, pero los pone en la primera fila de la hoja de destino, lo que dificulta luego las cosas. Las relaciones entre las casillas de cada hoja son las que se detallan en el código, se tienen que copiar cada una en su destino concreto. Sub copiar_ce…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.4k visitas
  18. Started by cohispro,

    Hola amigos del Foro, una pregunta se podrá esto: Guardar o Copiar la hoja activa (respetando el nombre de la hoja) a un libro que esta cerrado en un directorio determinado. Se generan varias hojas activas Necesito que la hoja activa se guarde al archivo Test.xls pero que no reemplace el existente. Que se acumulen las hojas al final del mismo archivo Test.xls Tengo esta Sub test() ActiveSheet.Copy ActiveWorkbook.SaveAs Filename:="C:\Temp\E\Test.xls" ActiveWorkbook.Close End Sub Gracias por sus aportaciones. ARCHIVO.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 851 visitas
  19. Necesito imprimir rotulos en donde una celda es texto y otra celda es numero, el cual debe ser correlativo, indicando desde que numero a que numero imprimir, esa indicación puede estar en la misma u otra hoja del libro. Muestra.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k visitas
  20. Started by jhonmar2012,

    Hola! que tal! tengo una dudilla que creo que es posible, necesito hacer un filtro con datos que registre con una userform, en la hoja registro varias cosas como fechas, de donde proviene la informacion, que cantidades, y quiero evitar el paso en que tengo que volver a la hoja para enseñarlos a mis empleadores, para evitar el caso de una posible modificacion posterior. asi trabajaria solamente sobre la userform y seria yo quien agregue dato a la base. adjunto el archivo! ojala puedan ayudarme! saludos!! gracias de ante mano! Userform1.rar Explicacion.pdf

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k visitas
  21. Started by Juanpy,

    Estimados del foro, Hace un tiempo cree una CommandBar usando el editor xml UI. El caso es que existen opciones de esta CommandBar que deseo se desactiven en un momento dado. He bajado alguno ejemplo desde el sitio del creador, pero no hacen el efecto dado. La idea: Sub EnableControlsWithCertainTag2() 'Enable only the controls with a Tag that start with "Group2" Call RefreshRibbon(Tag:="Group1Button1*") End Sub [/CODE] [CODE] Sub RefreshRibbon(Tag As String) MyTag = Tag If Rib Is Nothing Then MsgBox "Error, Save/Restart your workbook" & vbNewLine & _ "Visit this page for a solution: http://www.rondebruin.nl/rib…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 532 visitas
  22. Started by cata1870,

    Hola amigos, primero que todo agradecer por la buena honda del foro, e aprendido mucho de vba (aunque estoy en pañales aun) Mi consulta es la siguiente: Tengo que descargar 1800 certificados aprox. (de alumnos prioritarios), desde el link que les daré a continuación. Existe alguna manera de hacerlo automáticamente con una macro desde excel donde tengo los RUT? Este es el link: http://certificados.mineduc.cl/mvc/home/index# Una ves ahí se debe hacer clic en "Otros tipos de certificados", Luego "certificado de alumnos prioritarios 2014", Luego ingresar RUT e EMAIL, y por ultimo buscar... Dejo lista de RUT, para que prueben. Muchas Muchas gracias Prioritarios.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 593 visitas
  23. Hola soy nueno en este foro, en una hoja de excel tengo muchas lineas de informacion y lo que quiero es bloquear un rango especifico ejemplo: Ahorita estoy en la linea 510 y necesito es bloquear las filas de la 1 a la 510 solamente (las columnas A a la M) ,entonces seria bloquear desde A1 a M510 supongo, ya que en la fila 511 seguire capturando informacion asi cada dia. Lo que se me ocurre es con una forma y 2 textbox donde textbox1= rangoinicial y textbox2 rangofinal. Quiero tener 2 botenes boton1= Inhabilitar rangos y Boton2= Habilitar los rangos Nota: que no se deshabiliten las formas donde esta la macro . Tengo algo pero es con una fecha especifica y lo que q…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 634 visitas
  24. Hola amigos!!! Solicito su ayuda para realizar el siguiente trabajo: 1- Necesito concatenar desde hoja "OC" hacia hoja "Oferta_de_Compra": B2 "-" E1 B2 "-" F1 B2 "-" G1 B2 "-" ....hasta V1 Posteriormente concatenar, B43 "-" E42 B43 "-" F42 B43 "-" G42 B43 "-" ....hasta V42 Y así consecutivamente hasta finalizar el ciclo de 41 filas, esto pegar transpuesto y se forma consecutiva en la columna "C" desde la fila 3 de la hoja "Oferta_de_Compra". 2. Posterior al ciclo de concatenación, ordenar de mayor a menor la columa "K" desde la tercera fila. 3. En la columna "M" desde la fila 3, colocar la palabra "IVA", según corresponda de acuerdo al llenado de las otras …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.6k visitas
  25. Started by EMILIO CIEZA,

    Tengo programada esta macro para insertar una imagen en una hoja de Excel, y funciona bien. Sub InsertarImagen() Set MiPc = CreateObject("Scripting.FileSystemObject") Set Carpeta = MiPc.GetFolder("C:\Documents and Settings\Usuario\Escritorio\foto\") Set Archivos = Carpeta.Files For Each Archivo In Archivos: Exit For: Next ActiveSheet.Pictures.Insert(Archivo).Select ActiveCell.Select End Sub La pregunta es: ¿como se programaría para un equipo con sistema operativo MAC?

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 750 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.