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

    SOLUCIONADO Raíz cúbica de un número negativo Al operar de esta manera (-9)^(1/3) en excel se devuelve el resultado de forma correcta, pero en VBA se produce un error. Sub raiz_negativo() Debug.Print (-9) ^ (1 / 3) End Sub[/CODE] Conoceís el motivo y algún forma de evitarlo, sólo se me ocurre: [CODE] Resultado = Abs(Numero) ^ (1 / 3) If Numero < 0 Then Resultado = -1 * Resultado [/CODE] Un saludo

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 4.5k visitas
  2. Hola muy buenas tardes, antes que nada quisiera agradecer por este foro y por todas las ayudas que brindan. Ahora bien, tengo un problema con un formulario de búsqueda y edición, quisiera que en el listbox que tengo dentro del formulario "BuscarV" se mostraran los datos que tengo, así como que me de la opción de búsqueda por algún criterio, ya sea por el numero de semana de registro, por unidad, importe o empresa y que adicionalmente me deje guardar los cambios, para esto he creado un Boton Guardar al cual se ligo la instrucción y que se inicializa junto con el listbox, asi como un botón modificar. Mis problemas son los siguientes, no puedo hacer que se muestren todos los…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.6k visitas
  3. Encontré una magnífica macro de uno de sus colaboradores, para hallar la diferencia entre dos horas (Hora de Entrada y Hora de Salida) a través de varios TextBox. La he adaptado a mis necesidades. Funciona perfectamente, pero no consigo que haga el cálculo cuando la hora de Salida rebasa las 24 horas y pasa al día siguiente. Agradecería algún consejo, gracias. Libro1.zip

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.4k visitas
  4. Como puedo desde una planilla excel local leer y bajar un dato (número de orden de compra), desde una planilla ubicada en un servidor con IP fija. Una vez leido el número incrementarlo en uno y subirlo al servidor remoto actualizado. Gracias por la ayuda que me puedan dar.

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1k visitas
  5. Started by Gerardo Arevalo,

    Buen día tengan todos ustedes. Hoy ando re loco, tengo una idea en la cabeza que no se ni por donde empezar ni como hacerlo, veran; tengo una macro que me genera hojas con ciertos datos, despues por cada hoja me genera un libro llamado igual que la hoja, ahora bien tengo otra macro que me genera hojas con nombre, pero en vez de querer que por cada hoja me haga un libro, entonces vaya y busque el libro y ahi me ponga la hoja, siendo asi que tenga dos hojas por cada libro genrado de la macro anterior, es posible esto, o estoy reloco. Saludos. Desde ya muchas gracias. GErardo!

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.2k visitas
  6. Hola! escribo porque necesito de su ayuda. Quisiera que al seleccionar un botón de opción, se habiliten ciertos cuadros combinados. Por ejemplo, en el archivo adjunto, quisiera que, al elegir "Medio Día" solo se habiliten dos cuadros combinados (Desayuno y Almuerzo); mientras que al elegir Día completo, se habiliten los cuatro. Es posible?? Gracias! Libro.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 906 visitas
  7. Buenas comunidad, tengo este problema en el que necesito que si en columna A existe un valor repetido y se cumple cierta condición (que el valor de la celda original en columna F sea distinto de "si") se pinte de un color la fila entera de todos los valores repetidos y este no se pueda modificar. En el archivo adjunto, por ejemplo me gustaría que si ingreso el valor 10 en columna A no pase nada debido a que en columna F el valor es "si" pero en cambio si ingreso el valor 3 en columna A debería ambos marcarse de algún color y ese debería ser inmodificable. Gracias de antemano! comp.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 894 visitas
  8. Started by lil1234,

    Hola Buen Día Me gustaría si alguien me puede ayudar con este tema, cada vez que voy avanzando en mi base de datos me encuentro con otro inconveniente. Lo que me resulta muy interezante por que asi voy aprendiendo cada vez mas Ahora si voy al punto Necesito copiar información de unas hojas determinadas en un libro nuevo. Tengo que copiar tanto formatos como valores, Sin Formulas( Conservando los valores), ahí radica mi problema. Yo había utilizado la función Worksheets("Hoja1").Copy y si realmente me crea una copia en otro libro, pero conserva los links de donde obtiene la información y cuando necesito enviársela a alguien mas le sale error de referencia. claro por qu…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2.1k visitas
  9. Invitado jonnas
    Started by Invitado jonnas ,

    Hola a todos, no se si puedan ayudarme. Necesito una macro que me extraiga con un botón desde un archivo de texto externo a Excel, los datos de las columnas CODIGO, NOMBRE, USUARIO, ESTADO, F.INGRESO, F.CESE, F.FIN EMAIL y adicionalmente me extraiga las lineas DEPENDENCIA ANTERIOR y DEPENDENCIA ACTUAL.El archivo de texto es un reporte 1000 lineas aproximadamente, también debería limpiar las celdas, cada vez que se pida un nuevo reporte, los datos a extraer en la columna CODIGO sería: 20839, NOMBRE seria: GALVEZ/ARAUJO/ROSA JESUS, USUARIO seria: RGLAVEZ, ESTADO seria: A, F.INGRESO seria: 1984-10-09, F.CESE seria: Nulo, F.FIN EMAIL seria: nulo todo esto de la linea 1, 2009…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.2k visitas
  10. Started by pep,

    Hola, He estado leyendo e intentando buscar una solución al Excel que estoy realizando, pero no he encontrado nada. Por eso me he decidido a escribir. Estoy intentando realizar un Bingo con imágenes (en este caso letras). Al pulsar el botón generar imagen aparece una letra aleatoriamente. En la tabla en amarillo quiero poner las letras que van saliendo acompañadas con las imágenes. Aquí tengo el problema. He probado a hacerlo igual que el bingo, con la función DESREF y COMPARA... pero me encuentro con que en dichas funciones las "variables" a las que apuntan las celdas son fijas (por ejemplo BINGO!$C$11). ¿Cómo puedo hacerlo? Gracias de antemano, Pep P.D: debido…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.8k visitas
  11. Hola que tal quisiera que por favor me ayudaras es mi proyecto final de la prepa y la verdad es que no se nada de programación me urge te pido tu apoyo. Es con la siguiente MACRO EXCEL miren tengo dos columnas la primera es el Estado y la segunda el Código Postal. Lo que necesito es que a través de una macro me vaya recorriendo las celdas es decir a1 con b1 valide a2 con b2 valide etc. hasta llegar a la ultima que tenga información la validación seria que el Estado corresponda al Código Postal indicado y viceversa. Tengo los rangos establecidos para cada estado con gusto los anexo en archivo. Posteriormente quiero que cuando no este correcta la validación, me vaya gen…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 977 visitas
  12. 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
    • 794 visitas
  13. Started by vic91am,

    Buenos días, Necesito vuestra ayuda. En el fichero excel tengo una hoja llamada base de Datos. Cada registro las quiero pasar a una hoja nueva dependiendo del ID. Ejemplo si tengo un registro con ID 1, crear una hoja nueva con la cabecera y los registros que tengan el mismo ID. La hoja se llamaría igual que el ID; 1. Lo mismo con los demás registros con los diferentes ID´s. Creo que es una cosa sencilla pero que no sé. Adjunto fichero como ejemplo. GRacias!!!! Un Saludo Vic Ejemplo2103.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 782 visitas
  14. Started by LuisV26,

    Saludos Tengo dos bases de datos para cruzar las cuales las tengo organizadas por subtotales en la opcion 2 (que es cuando muestra solo los totales de cada referencia). Para esta tarea ejecuto una macro de busqueda referenciada que funciona bien, pero como comente anteriormente los datos esta organizados por subtotales en la opcion 2 la macro me trae el valor exacto pero se ejecuta tambien en las celdas que estan ocultas. Se que debe haber un fragmento de codigo que Cuando se este ejecutando la macro de busqueda tome solo las celdas visibles y omita las celdas ocultas. Espero haberme expresado de la mejor forma, Sin embargo Dejo un ejemplo Gracias por sus respuestas. …

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 6.2k visitas
  15. buenas mi pregunta es simple, como puedo insertar un formato numero en vez de formato fecha en una celda de criterio en donde se ingresa la fecha para realizar un filtro el codigo para el ingreso de los criterios del filtro es este If Target.Address(False, False) = "C2" Then If Range("C2").Value = "" Then Application.SendKeys (">=") End If End If If Target.Address(False, False) = "D2" Then If Range("D2").Value = "" Then Application.SendKeys ("<=") End If End If If Target.Address(False, False) = "C3" Then Call Filtro_fechas("C2", ">") End If If Target.Address(False, False) = …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 728 visitas
  16. Started by naymenos,

    Hola a todos, Llevo mucho intentando lo siguiente, pero siempre me topo con el problema de crear libros cuando no existen. Tengo diariamente que copiar valores de múltiples archivos planos *.CSV en una plantilla de excel. No se como hacer que por cada archivo *.CSV copie valores y pegue en la plantilla única generando luego un libro y así sucesivamente con cada CSV. Mañana adjuntare ambos ejemplos. Plantilla y csv . No se por donde empezar. Gracias adjunto ejemplos, les he incluido la extension .xls para que me deje subirlos , pero las extensiones son CSV y xltx inacal_Glo_ 1.csv.xls Seguimiento_caja_alternativa.xltx.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 620 visitas
  17. Buenas tardes comunidad AyudaExcel. La solicitud es la siguiente, requiero la ayuda con la herramienta de Correo Electronico Lotus Notes. Actualmente, manejo una base de datos que en una Textbox me indica el correo electronico de la persona. Seria eficiente que mediante un botón al dar click abra Lotus Notes y únicamente con el destinatario es decir, con el correo indicado en la textbox. De antemano gracias!

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.2k visitas
  18. Started by juancaraujoc,

    Buen dia amigos alguien por casualidad sabra como correr macros automaticamente cada cierto tiempo Saludos - - - - - Mensaje combinado - - - - - Listo ya solucione colocando el siguiente comando al inicio de cada macro Sig = Now + TimeValue("00:15:00") Application.OnTime Sig, "NOMBRE DE LA MACRO" Saludos cordiales

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2k visitas
  19. Started by paranere,

    Hola buen dia a todos... De antemano, se que las macros no funcionan bien cuando se comparte un libro... Tengo una proteccion de hoja basica desde VBA: Private Sub Worksheet_Activate() ActiveSheet.Protect Password:="contraseña" End Sub El problema es que al compartir el libro no hay opcion para desproteger la hoja... No se que pueda hacer... quiero que se siga ejecutando esa instruccion pero con el libro compartido Saludos!!!

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 2.4k visitas
  20. Started by dff1403,

    Hola Estimados, pues bien, un gran favor, tengo este archivo con una macro, la cual no está funcionando muy bien, ya Que lo que necesito es que cada vez que ponga la palabra “ok” desde el rango E 2 hacia abajo de la hoja PROCESO se copie toda la celda hacia la hoja PENDIENTE, pero una debajo de otra cada vez que ponga “ok” en la celdas de la fila E. les adjunto el ejemplo. Muchas Gracias, Seguimientos 2.xls O COMPRa.xls Seguimientos 4.xls

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 799 visitas
  21. Encontrar duplicado de una misma columna y consultar valor de una diferente Buenas colgegas he escrito en parte de mi macro el siguiente código para que encuentre duplicados de una misma columna y los pinte de verde: Dim celda As LongDim celdaMax As LongWith ControlesRemoto celdaMax = .UsedRange.Rows.Count For celda = 2 To celdaMax If Application.WorksheetFunction.CountIf(.Columns(1), .Cells(celda, 1).Value) > 1 Then .Cells(celda, 1).Interior.ColorIndex = 4 Else .Cells(celda, 1).Interior.ColorIndex = x1ColorIndexNone End If Next celdaEnd With[/PHP] ahora la cuestión que me tiene loco hace unos días es que quiero que al…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 691 visitas
  22. Buenos días, estaba interesado en vincular el valor de una celda a un textbox de un userform, a continuación subo un ejemplo de un user form que agradeceré eternamente a Gengis y en el que explico lo que necesito. En la hoja1 hay un botón de formulario vinculado a un userform, pues necesito que cuando aparezca, en el textbox del campo Rango, aparezca ya vinculado el valor de la celda A1 de la hoja2, en este caso: B1:B10 Un saludo y muchas gracias. Ejemplo.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.9k visitas
  23. Buenos días! Estoy metido con los macros de excel pero no consigo avanzar. Necesito automatizar varias cosas en mi libro. Espero que me den una solución, y muchas gracias de antemano toda la ayuda que seguro recibire. Dicho esto vamos al lio! Tengo un libro de excel que tiene en la primera hoja varias columnas. Aqui necesitaria que en la columna A se marcasen, de rojo por ejemplo, todos los nombres que están en las demás columnas. Ahora en las columnas a partir de la B necesitaria sacar de alguna manera todos los nombres que no esten en la columna A. Finalmente tendria que pasarse las urls marcadas de la columna A y las que no estan repetidas de las otroas columna…

    • 0

      Reacciones de usuarios

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

    Buen dia. Tengo un dilema como se pueden ejecutar tres macros en una sola hoja y si es posible anexo detalles de los codigos Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next If Target.Column <> 1 Then Exit Sub Select Case UCase(Target.Text) Case "SEP" MsgBox "Solo se aceptan profesores de base" Case "STEN 41" MsgBox "Dato incorrecto" 'Aqui puedes añadir tantos casos como quieras End Select End Sub Dim X As Variant Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo neo If Intersect(Target, Range("E7:F454")) Is Nothing Or Target.Value = "OTROS" Then Exit Sub If Intersect(Target, Range("E7:F454")) Is Nothing Or Target.Value = …

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.1k visitas
  25. 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

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.