Cómo programar una reunión de Skype
Aprenda a programar reuniones efectivas en Skype Empresarial desde Outlook o la aplicación de Skype. Siga nuestros sencillos pasos para una mejor colaboración.
VBA para Excel 2016 es rápido, pero no siempre es lo suficientemente rápido. (Los programas de computadora nunca son lo suficientemente rápidos). Siga leyendo para descubrir algunos ejemplos de programación que puede usar para acelerar sus macros.
Al ejecutar una macro, puede sentarse y observar toda la acción en pantalla que ocurre en la macro. Aunque hacer esto puede ser instructivo, después de que la macro funcione correctamente, a menudo es molesto y puede ralentizar considerablemente el rendimiento de la macro. Afortunadamente, puede desactivar la actualización de la pantalla que ocurre normalmente cuando ejecuta una macro. Para desactivar la actualización de la pantalla, use la siguiente declaración:
Application.ScreenUpdating = Falso
Si desea que el usuario vea lo que está sucediendo en cualquier momento durante la macro, use la siguiente declaración para volver a activar la actualización de la pantalla:
Application.ScreenUpdating = True
Para demostrar la diferencia de velocidad, ejecute esta simple macro, que llena un rango con números:
Sub FillRange () Dim r tan largo, c tan largo Número tenue tan largo Número = 0 Para r = 1 a 50 Para c = 1 a 50 Número = Número + 1 Celdas (r, c) .Seleccionar Celdas (r, c). Valor = Número Siguiente c Siguiente r End Sub
Verá que se selecciona cada celda y se ingresa el valor en las celdas. Ahora inserte la siguiente declaración al comienzo del procedimiento y ejecútela nuevamente:
Application.ScreenUpdating = Falso
El rango se llena mucho más rápido y no ve el resultado hasta que la macro termina de ejecutarse y la actualización de la pantalla se establece (automáticamente) en Verdadero.
Cuando está depurando código, la ejecución del programa a veces termina en algún punto intermedio sin que haya vuelto a activar la actualización de pantalla. Esto a veces hace que la ventana de la aplicación de Excel deje de responder por completo. La forma de salir de este estado congelado es simple: regrese al VBE y ejecute la siguiente declaración en la ventana Inmediato:
Application.ScreenUpdating = True
Si tiene una hoja de trabajo con muchas fórmulas complejas, puede encontrar que puede acelerar las cosas considerablemente configurando el modo de cálculo en manual mientras se ejecuta la macro. Cuando finalice la macro, vuelva a establecer el modo de cálculo en automático.
La siguiente declaración establece el modo de cálculo de Excel en manual:
Application.Calculation = xlCalculationManual
Ejecute la siguiente instrucción para establecer el modo de cálculo en automático:
Application.Calculation = xlCalculationAutomatic
Si su código usa celdas con resultados de fórmula, desactivar el cálculo significa que las celdas no se volverán a calcular a menos que le indique explícitamente a Excel que lo haga.
Como sabes, una macro puede realizar automáticamente una serie de acciones. En muchos casos, puede iniciar una macro y luego pasar el rato en la sala de descanso mientras Excel hace lo suyo. Sin embargo, algunas operaciones de Excel muestran mensajes que requieren una respuesta humana. Estos tipos de mensajes significan que no puede dejar Excel desatendido mientras ejecuta su macro, a menos que conozca el truco secreto.
Puede indicarle a Excel que no muestre este tipo de alertas mientras ejecuta una macro.
El truco secreto para evitar estos mensajes de alerta es insertar la siguiente declaración de VBA en su macro:
Application.DisplayAlerts = False
Excel ejecuta la operación predeterminada para este tipo de mensajes. En el caso de eliminar una hoja, la operación predeterminada es Eliminar. Si no está seguro de cuál es la operación predeterminada, realice una prueba para ver qué sucede.
Cuando finaliza el procedimiento, Excel restablece automáticamente la propiedad DisplayAlerts en True. Si necesita volver a activar las alertas antes de que finalice el procedimiento, utilice esta declaración:
Application.DisplayAlerts = True
Como probablemente ya sepa, las referencias a objetos pueden llegar a ser muy extensas. Por ejemplo, una referencia completa a un objeto Range puede verse así:
Libros de trabajo ("MyBook.xlsx"). Hojas de trabajo ("Hoja1") _ .Rango ("Tasa de interés")
Si su macro utiliza con frecuencia este rango, es posible que desee crear una variable de objeto mediante el comando Establecer. Por ejemplo, la siguiente declaración asigna este objeto Range a una variable de objeto denominada Tasa:
Establecer tarifa = Libros de trabajo ("MyBook.xlsx") _ .Hojas de trabajo ("Hoja1"). Rango ("Tasa de interés")
Después de definir esta variable de objeto, puede utilizar la variable Tasa en lugar de la referencia extensa. Por ejemplo, puede cambiar el valor de la celda denominada Tasa de interés:
Rate.Value = .085
Esto es mucho más fácil de escribir que la siguiente declaración:
Libros de trabajo ("MyBook.xlsx"). Hojas de trabajo ("Hoja1"). _ Rango ("Tasa de interés") = .085
Además de simplificar su codificación, el uso de variables de objeto acelera considerablemente sus macros.
Por lo general, no tiene que preocuparse por el tipo de datos que asigna a una variable. Excel maneja todos los detalles detrás de escena. Por ejemplo, si tiene una variable llamada MyVar, puede asignar un número de cualquier tipo a esa variable. Incluso puede asignarle una cadena de texto más adelante en el procedimiento.
Si desea que sus procedimientos se ejecuten lo más rápido posible, dígale a Excel qué tipo de datos se asignarán a cada una de sus variables. Esto se conoce como declarar el tipo de una variable.
En general, debe usar el tipo de datos que requiera la menor cantidad de bytes pero que aún pueda manejar todos los datos asignados. Cuando VBA trabaja con datos, la velocidad de ejecución depende de la cantidad de bytes que VBA tiene a su disposición. En otras palabras, cuantos menos bytes usen los datos, más rápido VBA podrá acceder y manipular los datos. Una excepción a esto es el tipo de datos Integer. Si la velocidad es crítica, utilice el tipo de datos Long en su lugar.
Si usa una variable de objeto, puede declarar la variable como un tipo de objeto en particular. He aquí un ejemplo:
Tasa de atenuación como rango Establecer tarifa = Libros de trabajo ("MyBook.xlsx") _ .Hojas de trabajo ("Hoja1"). Rango ("Tasa de interés")
¿Necesita establecer una serie de propiedades para un objeto? Su código se ejecuta más rápido si usa la estructura With-End With. Un beneficio adicional es que su código puede ser más fácil de leer.
El siguiente código no usa With-End With:
Selection.HorizontalAlignment = xlCenter Selection.VerticalAlignment = xlCenter Selection.WrapText = True Selection.Orientation = 0 Selection.ShrinkToFit = False Selection.MergeCells = False
Este es el mismo código, reescrito para usar With-End With:
Con selección .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .WrapText = Verdadero .Orientación = 0 .ShrinkToFit = Falso .MergeCells = Falso Terminar con
Cuando use With-End With, asegúrese de que cada declaración comience con un punto.
Aprenda a programar reuniones efectivas en Skype Empresarial desde Outlook o la aplicación de Skype. Siga nuestros sencillos pasos para una mejor colaboración.
Aprende a usar la función de Pegado Especial en Excel 2016 para optimizar la forma en que insertas datos en tus hojas de cálculo. Controla qué información se pega y realiza operaciones matemáticas simples con facilidad.
Descubre las funciones de Excel para convertir entre binario, octal, decimal y hexadecimal con esta tabla informativa y consejos útiles para optimizar tu trabajo.
Completa guía sobre cómo instalar y activar el complemento de Power Query en Excel 2010 y 2013, y su uso en Excel 2016. Aprende a gestionar datos de manera efectiva en Excel.
Aprende a modificar y editar bases de datos en Access 2019, incluyendo cómo nombrar campos, agregar y eliminar campos, y definir tipos de datos. ¡Optimiza tu trabajo con Access!
El comando Ir a en Word 2016 es una herramienta poderosa para navegar rápidamente a una página específica o a elementos dentro del documento. Aprende a optimizar tu flujo de trabajo con este práctico comando.
Aprende cómo resaltar fechas de fin de semana en Excel utilizando formato condicional para mejorar la gestión de tus datos de programación.
Aprenda a insertar un hipervínculo "mailto" en Excel 2010 para crear correos electrónicos de manera simple y eficiente.
Aprenda a utilizar las opciones de pegado y Pegado especial en Word 2007 para manejar eficazmente bloques de texto. Optimizando su formato y presentación.
Descubre cómo modificar un gráfico SmartArt en PowerPoint incluyendo cambios de diseño, estructura y texto. Mejora tus presentaciones con estos consejos SEO.