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

    Hola, tengo un problema con un userform de 6 button_clicks. Dependiendo del button click seleccionado, la variable X cogerá un valor entero del 1 al 6. Esta variable X, està declarada en el programa principal como public X, ya que se va a utilizar en varias ocasiones. El userform se ejecuta perfectamente y coge el valor correspondiente, pero en el programa principal, el valor de la variable no es el correcto, ya que el valor de X pasa a ser 0. Resumen codigo: Public X As Integer Sub A () . . . UserForm1.Show . . . End Sub Y así es el codigo de un buttonclick Private Sub OptionButton1_Click() If OptionButton1 = True Then X = 1 End If End Sub …

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 2.1k visitas
  2. Started by jik,

    Hola. Estoy declarando una variable de una ruta al abrir un libro para después utilizarla en varios módulos. La pruebo con MsgBox y la variable queda bien declarada pero al tratar de utilizarla en otro módulo su valor (también probado con una msgbox) queda en blanco. ¿por qué me pasa esto? No soy muy experto por lo cual agradezco una explicación relativamente simple. Muchas gracias A continuación la declaración cuando se abre el libro: Option Explicit Public ImpPredeter As String Public RutaData As String ----------------------------------------------------------------------------------------- Private Sub Workbook_Open() Application.ScreenUpdating …

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 2.2k visitas
  3. En la ejecucion de una macro cuando filtras ,excel recupera una varible, funcion... (deconozco como llamarlo) , que te dice el total pone "se encontraron 2 de tres registros" en la parte inferior. ¿¿Cual es la variable que recoge esa informacion?? adjunto imagen para aclaracion. gracias y un saludo. .

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 624 visitas
  4. Started by efop,

    Alguien sabe como leer y escribir en una var. de entorno, desde VBA excel?. Leer: Probando con la función Environ("variable"), me retorna una cadena vacía (a dicha "variable" la cree en DOS con el comando set variable=valor). Escribir: No he encontrado información sobre como puedo escribir en una var. de entorno desde VBA!! Gracias!

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2.5k visitas
  5. Buena Tarde Tengo una macro en la que tengo algunas variables, una de ellas string pero es para recorrer las celdas, la inicializo con E, la siguiente debe ser F, G, H, I asi consecutivo para que realice una suma al avanzar en la macro de cada una de las celdas, corriendo el filtro, pero esta variable no he podido, hacer que pueda decirle next y sea la siguiente letra del alafabeto, como podria hacer esto ? Gracias Esta es la macro Dim n&, cCriterio$, H&, LE As String j = 5 LE = "E" For H = 5 To 10 For n = j To 19 If n = j Then cCriterio = "<>0" Else cCr…

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 2.6k visitas
    • 1 seguidor
  6. Hola a todos, es mi primer tema en el foro. En el Libro1 tiene un formulario que simula una factura, el cual, en la columna “Código” del artículo posee varios Combos. El usuario al seleccionar el primer combo (ComboBxCod1), coloca una cantidad X en la columna Cantidad (TextBxCant1) que al momento de “Guardar”, me resta al saldo disponible de la columna “Cantidad” hoja “ARTICULOS” del Libro2, así que de esa manera arroja el resultado efectuado por el código de la macro que adjunté, hasta este punto funciona bien. El problema es: los otros combos y no sé cuál es la instrucción para estas variables que esté relacionado con varios textboxs para poder restar la cantidad d…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 601 visitas
  7. Saludos amigos del foro, me gustaria saber como puedo variar el tamaño de letra en un textbox a veces es necesario ampliar para lograr leer texto pequeño teniendo que subir el tamaño, o ver panoramicamente todo el texto para lo cual hay que bajar el tamaño. Acudo a sus habilidades y conocimientos para hacer funcionar el problema de este tema. Agradezco sus gentiles colaboraciones subo el archivo para que lo vean. Variar tamaño de letra en Textbox.xlsm

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 12.3k visitas
  8. Started by Visor,

    La consulta en esta ves es, que si se podría crear varias áreas de impresión en una misma hoja o en varias hojas de un libro y cada una de estas tenga un nombre para que al momento de hacer una macro solo sea necesario nombrarla en un commandbutton para imprimir cualquiera de estas, según se requiera.?? En la web solo encuentro que si se selecciona un área y se pulsa control se puede seleccionar otra área, pero ,... como las identificaría a cada área de impresión para el propósito antes mencionado?? Gracias anticipadas por la respuesta

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.9k visitas
  9. Started by jotaeme,

    Estimados Se me ha complicado un poco lo siguiente: tengo un libro con 8 hojas en el mismo formato del adjunto....donde van centros de costos horizontalmente y codigos de pago en forma vertical (columna A). Cada hoja es diferente a la otra en valores por supuesto y no todas tienen los mismo centros de costos y codigos de pagos en la hoja nueve (9), he generado un maestro de centros de costos y un maestros de codigos de pagos. Pues bien, en la hoja 10, quiero generar un planilla que contenga todos los centros de costos y todos los codigos de pagos con la suma de los valores que encontro en las 8 hojas de datos. Se entiende? Por cada centro de costo y p…

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.3k visitas
  10. Started by Salvador1,

    Hola. He buscado y rebuscado por Internet, sin éxito, una macro genérica que simplemente copie el contenido de todas las hojas excel (se llamen como se llamen) a una sola. ¿Es posible conseguirla? Subrayo lo de "genérica" para no tener que estar definiendo en el código los rangos a copiar, ni que dependa del nombre de las hojas, ni nada. Como mucho, si hay que poner algo, que sólo sea poner el nombre de la hoja a donde se quieren traspasar los datos y la columna última que contiene los datos. Pero cuanto más genérica mejor. Si alguien puede aportar algo, se lo agradezco. Saludos.

    • 0

      Reacciones de usuarios

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

    Hola, un saludo al foro. Tengo una consulta que hacer porque no encuentro nada de esto en esta web, y lo poco que he visto por ahí no se ajusta a lo que busco. Tengo un Userform en el que se buscan unos pedidos en una tabla de una hoja, y en que el número de respuestas puede variar desde 1 resultado hasta 100, más o menos. Por esto, he creado unos Checklist que se generan en tiempo de ejecución. Hasta aquí bien, el problema es una vez creado, no sé como atrapar el evento clic, o change, ya que lo he creado en un módulo de clase pero solo responde el último Checklist, los anteriores no hacen nada. Adjunto un archivo de ejemplo que he encontrado en una w…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1k visitas
  12. Started by cadavid04,

    Buenos días, soy nuevo en estoy de programar en excel, tengo un macro de evento de una lista desplegable, la cual si se le inserta un valor que no esta en la lista lo agrega automáticamente, aquí esta el código Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address <> "$D$5" Then Exit Sub On Error Resume Next fil = Application.WorksheetFunction.Match(Target, Sheets("Hoja2").Columns("B:B"), 0) If fil <> "" Then Exit Sub uf = Sheets("Hoja2").Range("B" & Cells.Rows.Count).End(xlUp).Row + 1 Sheets("Hoja2").Range("B" & uf) = Target Sheets("Hoja2").Range("B5:B" & uf).Sort Key1:=Sheets("Hoja2").Range("B5"…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.5k visitas
  13. Started by NAB_20,

    Buenas, estoy intentando controlar varios errores en un código con la instrucción "On Error Goto [LABEL"]. El primer error que detecta sí que funciona bien pero en el siguiente ya da error. La idea del código es que mire si hay determinada imagen en la hoja y en caso de que no la localice pase a la siguiente línea para ver si hay otra imagen que me interesa localizar Adjunto archivo. Saludos y gracias PruebaError.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.3k visitas
  14. Hola estimados; Soy nuevo en el foro, ojala me puedan ayudar con lo siguiente: Necesito que varios usuario puedan ingresar en un archivo excel compartido en red, este archivo excel tiene formularios. Quiero que los usuario puedan ingresar/Modificar/Eliminar datos. Lo ultimo que les menciono ya lo he logrado. Solo me falta que sea usado por varios usuarios a la vez. gracias de antemano a todos.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.7k visitas
  15. Buenas tardes. En primer lugar agradecer a todo el foro y en especial a todo el grupo que contesta a nuestras dudas, por el tiempo que le dedican y el ofrecimiento de sus conocimientos para nuestra ayuda. Se trata de una herramienta para el control de movimientos de entradas y salidas de un almacén. He estado buscando por los diversos temas de foro pero no he encontrado nada que me pueda servir. Lo que pretendo es que cuando realizo la consulta de movimientos se cree un nuevo archivo con los datos de la consulta con el nombre de "consulta movimientos + la fecha y hora" del momento en que se realiza la consulta, para poder guardarlo en una carpeta.PRUEBA MOVIMIEN…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 621 visitas
  16. Estimados Por favor su ayuda.. Estoy interactuando con internet explorer pero me surgio un problema ya que se me presnto el siguiente codigo en la pagina de internet. <select name="YEAR" class="selectfecha" onchange=" checkDate()"> <script language="javascript" type="text/javascript">for(var num=0; num<=(thisYear - 1999); num++){ document.writeln("<option>" + (thisYear-num)+"<\/option>"); }</script> <option> Text - 2012 Text - Empty Text Node <option> Text - 2011 Text - Empty Text Node <option> Text - 2010 Text - Empty Text Node <option> Text - 2009 Text - Empty Text Node <option> …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.8k visitas
  17. Started by jsac179,

    Estimados: tengo una BBDD que necesito mejorar. tengo varios datos y necesito que cuando copie de otra planilla un grupo de datos estos no se graven o me señale el error actualmente trabajo con una formula que encontré en interne que me avisa cuando se duplica, pero solo funciona de solo dato, cuando copio muchos esta marca error. un ejemplo es como el archivo que les subo. prueba.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 628 visitas
  18. Started by Dexel,

    Buenas noches comunidad, Mi consulta va por el metodo workbook, quiero saber si se puede emplear ese metodo para hacer que el libro al guardarse manualmente o autoguardado, envíe los datos guardados a otro libro actualizando fila por fila, columna por columna , empleando la ruta u otros metodos. Agradezco su respuesta. Saludos, Dayo Cascav

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 964 visitas
  19. Hola a todos,Llevo un buen rato con un pequeño error, y no veo la forma de subsanarlo.Tengo una tabla donde en la columna A hay distintos valores ( pero se pueden repetir ), lo que intento hacer es aplicar formatos a las celdas por cada grupo donde las celdas sean distintas.Son 2 colores , solo me interesa que visualmente se vean los que son iguales.Ejemplo:Columna A.01.01 Aplico Color 101.02 Aplico Color 201.03 Aplico Color 101.03 Aplico Color 101.03 Aplico Color 1Este es el código que estoy usando, pero cuando llega a los repetidos no consigo controlar que no cambie de color. Sub FormatosDescompuestos() Dim Wb As Workbook Dim ws As Worksheet Dim ColorFilaP, Color…

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1k visitas
    • 1 seguidor
  20. Hola, Tabla con dos columnas, en la columna A está el valor que deseo buscar y que coge de un formulario Para la búsqueda del valor utilizo Vlookup, pero necesito decirle que cuando encuentre ese valor, seleccione la fila y la borre. Eso es lo que me falla Gracias

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 3.2k visitas
  21. Started by lasheralberto@gmail.com,

    Hola a todos, primer día aquí en este foro, espero podáis ayudarme con un asunto que me lleva de cabeza. He preparado un excel para registrar vacaciones etc. El funcionamiento es el siguiente: A) el empleado tiene un número de días máximo por semana para coger, si sobrepasa el % la siguientes celdas aparecerán coloreadas en naranja b) la macro que he estado haciendo identifica estos subrangos (semanas) y aplica el criterio anterior, y colorea celdas. El problema está en los meses con menos de 31 días, como es Junio. El rango que colorea la macro se desplaza una columna a la izq. Mi intención es por ejemplo, en el caso de Junio, que la macro ident…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 973 visitas
  22. Started by Jeyner,

    Hola a todos. He tratado de añadir una nueva condicion a mi codigo de combinaciones pero en cada intento, solo saco errores, o no produce ningun resultado. Este codigo produce una lista de combinaciones de 6 numeros y puedo controlar cuantos primos y pares como tambien la suma de cada combinacion. La condicion que deseo añadir ahora es Columna "Q" - col "L" si el resultado esta comprendido entre los numeros minimo de la celda E9 y el maximo de la celda E10 entonces mostrar la combinacion, de lo contrario no mostrarla. La lista de combinaciones esta en el sheet2, y el modulo es el 1. Quiero ser un poco mas claro, para poder recibir ayuda. VARIABLES. minV = valor mini…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 540 visitas
  23. Started by Víctor Pérez,

    Buenas, Estoy intentando realizar un macros que me lea los registros que cumplan una condición y me los pegue en otra hoja en la celda que le marco. He probado con esta macro, pero no me lo hace correcto me da error Sub Copiar_datos()

    • 0

      Reacciones de usuarios

    • 13 respuestas
    • 1.9k visitas
  24. Buenas tardes, soy nueva aquí y necesito ayuda Necesito crear un programa en excel que haga lo siguiente: En un excel llamado "PRUEBA" tengo escrito lo siguiente en una columna: ensayo 1 ensayo 2 ensayo 3 ... (hasta x ensayos) Tengo que crear un programa que lea esa columna, por ejemplo, que lea "ensayo 1", busque el documento excel con ese mismo nombre, lo abra, haga el promedio de los datos que aparecen en columnas en la ultima fila, copie esa ultima fila (los promedios), y los pegue en la fila del documento excel llamado "PRUEBA" donde pone "ensayo 1" justo después de "ensayo 1". He hecho la parte de las medias por individual pero no se como hacer todo eso …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 734 visitas
  25. Estimados Amigos, Buenas noches, una vez más requiriendo de su valiosa ayuda. Esta vez con el tema de saber más acerca de poder optimizar el BuscarV bajo vba, (VLOOKUP), ya que tengo un libro de unos 300000k registros y realmente ha tardado una eternidad en conseguir el objetivo aplicando formular1c1 y applicationvlookup. Consultando por ahí en google me encontré con el tema de los arrays y diccionarios, que increíblemente optimizan el trabajo de los vlookup en vba, pasando de hacer el trabajo de 30 minutos a 10 segundos sin exagerar. He intentando con un código que me ayudaron en un foro en inglés sin embargo no logro hacerlo trabajar además que soy nuevo en …

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 2.2k 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 sergio@ayudaexcel.com

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