Análisis de código de habilidades comunes de VBA
Antes de Office 2000, el software de sistemas de oficina como Word, Excel y Access usaban VBA, pero fueron unificados por Office 2000.
Excel fue la primera aplicación que incluyó VBA. A partir de Office 2000, Excel, Word, PowerPoint y Access tienen un lenguaje de macros unificado VBA, entre los cuales Excel y Access son los más maduros.
En Excel, los programas VBA se pueden almacenar en. xls o formato de texto separado. Para aprender VBA, los usuarios primero deben tener cierta comprensión de VB (pero no es necesario que sea profesional; después de todo, los usuarios que usan Excel con frecuencia son generalmente trabajadores de oficina y no pueden ser programadores profesionales), y luego usan la grabadora de macros para aprender. . Debido a que la grabadora de macros puede grabar macros, los usuarios pueden comprender muchas situaciones en VBA con mucha claridad. Además, si no es un programa VBA potente, con un grabador de macros será suficiente. Para abrir la grabadora de contraseñas, haga clic en Herramientas->Macro->Grabar nueva macro. Además, los usuarios pueden utilizar "Herramientas->Macro->Macro..." para administrar macros. Puede usar "Herramientas->Macro->Editor VB" o Alt+F11 para abrir el editor VB. En VB Programmer, puede administrar fácilmente todo el proyecto VB y escribir código VBA. Además, los usuarios pueden hacer clic en Alt+F11 para cambiar a la ventana de Excel.
Proceso de uso de VBA:
1. Crear un archivo Excel.
2. Cree un control, luego haga doble clic en el control o haga clic derecho en el control, haga clic en "Ver código" para ver un evento del control, como clic, pulsación de tecla, etc.
Escribir código de ejecución. Para crear un control, haga clic en Ver->. Barra de herramientas->Caja de herramientas de control", abra la columna "Caja de herramientas de control" y luego puede arrastrar el control directamente a la celda de Excel. En la ventana de Excel, el control agregado generalmente está en estado de ejecución. Si desea editar este control , puede editar sus propiedades cuando lo crea por primera vez, o puede abrir la caja de herramientas del control, o puede poner el control en estado de edición. Si eso no funciona, puede agregar otro control y luego el control existente lo hará. definitivamente estará en el estado de edición Después de modificar el control, no olvide eliminar el control inútil recién agregado. En el estado de edición, puede hacer clic derecho en el control y hacer clic en "Propiedades", y luego podrá abrir la ventana de propiedades. , en el que puedes editar fácilmente el control. Nombre, título, tamaño y otros atributos.
3. Codifica los eventos del control manualmente o usando la grabadora de macros. Las funciones potentes aún requieren escritura a mano en VBA.
Introducción a los objetos VBA:
La clave para escribir código VBA es usar objetos VBA de manera flexible y operar las propiedades o métodos de estos objetos VBA. Además, también puede crear funciones personalizadas para encapsular ciertas operaciones. Dado que es VBA, el estilo de codificación es, por supuesto, el mismo que el de VB. Si conoce VB, siempre que comprenda mejor los objetos de VBA. escriba un programa VBA potente. De manera similar, si no conoce VB, puede escribir un programa VBA potente. Solo necesita conocer los objetos de VBA, porque es relativamente simple y fácil de aprender. p>Las propiedades y métodos de los objetos VBA se analizan a continuación:
Entre algunos objetos de ventana que pueden contener otros objetos, hay varios atributos especiales, cuyos valores de atributos son los objetos actualmente activos, que se pueden consultar directamente. referenciado
Algunas propiedades especiales de la Tabla 1
Significado del nombre del objeto
Libro de trabajo actual de ActiveWorkbook, es decir, si tiene varios archivos de Excel abiertos, entonces el Excel El archivo que está editando es, por supuesto, ActiveWorkbook.
ActiveSheetLa hoja de trabajo actual en el libro de trabajo actual es la hoja de trabajo que se está editando en el archivo de Excel actualmente editado.
ActiveCell es la celda activa en la hoja de trabajo actual.
ActiveChartEl gráfico activo en el libro de trabajo actual.
Selecciona el objeto actualmente seleccionado.
Estos objetos y sus propiedades y métodos se describen en detalle a continuación.
1. Objeto Aplicación
Este objeto hace referencia al entorno de trabajo de la aplicación Excel.
< 1 >Atributos
1. Atributo de título
Significado: El texto que se muestra en la barra de título de la aplicación Excel.
Por ejemplo: Application.caption= "Sistema de gestión de tripulación". Si se especifica como vacía, se restaurará la barra de título predeterminada de Excel.
2. Atributo del cursor
Significado: La forma del mouse en Excel.
Tabla 2 Propiedades del cursor
Atributo Valor Forma del mouse
A XlDefault le falta un valor y al mouse le falta una forma.
XlWait espera un valor y el mouse toma forma de reloj de arena y sigue girando.
Valor XlNorthwestArrow, el mouse tiene la forma de una flecha estándar.
Valor de texto XlIBeam, el mouse tiene forma de "I" esperando que el usuario ingrese texto.
Acción: Aplicar. Cursor=xlEsperar, etc.
3. Mostrar atributo de alerta
Significado: se utiliza para decidir si se muestran mensajes de la aplicación del sistema e información de advertencia. De lo contrario, establezca algunas propiedades en falso y viceversa.
4. Mostrar propiedades de la barra de fórmulas
Significado: Se utiliza para determinar si se muestra la barra de edición de fórmulas.
5. Mostrar atributo de barra de desplazamiento
Significado: Se utiliza para decidir si se muestra la barra de desplazamiento de Excel.
6.Propiedad DisplayStatusBar
Significado: Se utiliza para determinar si se muestra la barra de estado de Excel.
7.Atributo EnableCancelkey
Significado: Se utiliza para determinar si el usuario puede interrumpir la ejecución del programa VBA. De forma predeterminada, durante la ejecución de un programa VBA, el usuario puede interrumpir la ejecución del programa VBA presionando Ctrl+Interrupción. En este momento, el valor de este atributo es xlInterrupt. Si desea interrumpir el programa VBA deshabilitado, asígnelo a xlDisabled; si VBA encuentra un error durante la ejecución y necesita detenerse, se asignará como xlErrorHandler.
8. Atributo de actualización de pantalla
Significado: Se utiliza para decidir si se muestran los resultados de la operación intermedia del programa VBA.
9. Propiedades de la barra de estado
Significado: establece el texto de la barra de estado.
10. Atributos de ActiveWorkbook
Significado: Como se describe en la Tabla 1.
11. Tabla de actividades
Significado: Según se describe en la Tabla 1.
12, atributo ActiveCell
Significado: Como se describe en la Tabla 1.
13. Propiedad ThisWorkBook
Significado: Se utiliza para devolver el objeto del libro de trabajo en el que se está ejecutando el programa VBA. Este no es el libro de trabajo actual. Por ejemplo, cuando hay varios libros abiertos, la propiedad ActiveWorkbook devuelve el objeto Libro de trabajo actual y ThisWorkbook devuelve el objeto de libro que ejecuta el programa VBA.
14, atributo PathSeparator
Significado: Devuelve el separador de ruta del archivo "\" Este es un atributo de solo lectura.
Ejemplo: atenuar strPath como cadena
strPath = aplicación. ThisWorkbook .Path & amp Aplicación. Operadores de ruta
Libro de trabajo. Abra strPath & amp" myExcel.xls "
15, atributo de nombre de usuario
Significado: establezca el nombre de usuario actual.
El usuario predeterminado está determinado por el nombre de usuario en la pestaña General del cuadro de diálogo Opciones de Excel. Los usuarios pueden abrir Opciones seleccionando Opciones en el menú Herramientas y restablecer el nombre de usuario predeterminado en el cuadro de texto Nombre de usuario en la pestaña General.
< 2 >Método
1, Método de cálculo
Significado: Recalcular todas las fórmulas en el libro abierto por Excel.
2. Método Goto
Significado: seleccione un objeto Range o un proceso VBA en el libro de trabajo, el formato es el siguiente:
Aplicar. Ir a referencia, desplazarse
El parámetro Referencia indica el destino del método Goto. Si el parámetro Desplazamiento es Verdadero, la barra de desplazamiento se desplazará para que el objeto Rango aparezca en la esquina superior izquierda de la ventana del libro. Si es Falso, la ventana del libro actual no cambiará sus propiedades. El valor predeterminado es Galse
Por ejemplo: Aplicación. Gotland ("C3"), de verdad.
3.Método InputBox
Significado: se utiliza para abrir un cuadro de diálogo de entrada para permitir a los usuarios ingresar datos. El formato es el siguiente:
Solicitud. InputBox(mensaje, título, izquierda, arriba, archivo de ayuda, ID de contexto de ayuda, tipo)
El parámetro de mensaje se utiliza para configurar la información del mensaje del cuadro de diálogo de entrada.
El parámetro de título se utiliza para establecer el texto del título del cuadro de diálogo de entrada.
El parámetro predeterminado se utiliza para establecer el valor de entrada predeterminado del cuadro de diálogo de entrada.
Los parámetros izquierdo y superior se utilizan para establecer el valor de las coordenadas de la esquina superior izquierda del cuadro de diálogo de entrada.
El parámetro helpFile se utiliza para establecer el nombre de la ayuda en línea en el cuadro de diálogo de entrada.
El parámetro HelpContextID se utiliza para establecer el número de identificación de contexto del tema de ayuda en línea del cuadro de diálogo de entrada.
El parámetro de tipo se utiliza para establecer el tipo de datos de entrada en el cuadro de diálogo de entrada. Por defecto, es tipo texto.
Por ejemplo: UserValue=Aplicación. InputBox("Por favor ingrese datos", "Entrada de datos", escriba:=7).
4.Método Onkey
Significado: Cuando se presiona una tecla o combinación de teclas, se ejecuta el código VBA. Pruébelo usted mismo, o también puede consultar las indicaciones del editor VB (es decir, el mensaje desplegable que aparece después de ingresar applicationo en el editor VB. Onkey).
En segundo lugar, conjunto de objetos de libros de trabajo
Una colección de todos los objetos de libros de trabajo abiertos actualmente.
& ltI >Propiedades
1, propiedad Count, de solo lectura, devuelve el número de libros abiertos por Excel.
& ltSecond>Curso
1. El método Agregar establece un nuevo libro de trabajo para el objeto del libro de trabajo, que es equivalente al comando "archivo->nuevo". El formato es el siguiente:
Libro de ejercicios. Agregar plantilla
2. El método Open abre el libro de trabajo especificado. Basta con mirar los consejos sobre formato en el editor VBA. Estoy demasiado cansado para terminar de escribir.
3.El método Close cierra el archivo del libro de trabajo.
En tercer lugar, el objeto del libro de trabajo
representa un archivo de libro de trabajo independiente
& ltI >Propiedades
1, propiedad ActiveSheet, devuelve el activo Objeto de hoja en el libro de trabajo actual.
2.Propiedad de autor, que devuelve o establece el nombre del autor del libro para determinar el propietario del libro.
3. La propiedad Guardado se utiliza para comprobar si el archivo del libro de trabajo se ha modificado.
& ltSegundo canal
1. Método de activación, utilizado para congelar un libro de trabajo como el libro de trabajo actualmente activo, como los libros de trabajo ("myoffice.xls"). activación.
2. El método Cerrar se utiliza para cerrar el libro de trabajo especificado.
3.El método Guardar se utiliza para guardar el libro de trabajo especificado.
Método 4.SaveAs, utilizado para guardar como un libro de trabajo específico.
En cuarto lugar, el conjunto de objetos de la hoja de trabajo
representa la colección de todas las hojas de trabajo del libro de trabajo actual.
& ltI >Propiedades
1. La propiedad Count devuelve el número de hojas de trabajo en el libro actual.
& ltSecond> Carretera
1, método Agregar, agrega un nuevo objeto de hoja de trabajo a la colección de objetos de hoja de trabajo, el formato es el siguiente:
Superficie de trabajo. Agregar antes, después, contar, escribir
Los parámetros Antes y Después se refieren a qué hoja de trabajo se inserta antes o después de la nueva hoja de trabajo. El valor es la hoja de trabajo
Por ejemplo: hoja de trabajo. agregar antes: = hojas de trabajo ("Hoja2"), lo que equivale a insertar una nueva hoja de trabajo antes de la hoja de trabajo Hoja2.
El objeto de hoja de trabajo verbo (abreviatura de verbo)
Representa una hoja de trabajo individual del libro.
Para obtener una hoja de trabajo, puede utilizar una hoja de trabajo ("Gastos de Oficina") o un informe, como la Hoja de Trabajo (3).
& ltI >Propiedades
1. La propiedad Nombre establece o devuelve el nombre del objeto de la hoja de trabajo.
2. La propiedad Visible determina si se oculta la hoja de trabajo.
& ltSegundo canal
1, método de cálculo, recalcula todas las fórmulas en la hoja de trabajo especificada.
2. El método Copiar se utiliza para copiar la hoja de trabajo especificada y colocarla en la ubicación especificada. En realidad, es una función que presta igual atención a copiar y pegar.
Formato: hoja-objeto.copiarantes,después
Por ejemplo, hoja de trabajo("Hoja2"). copiar después:= hojas de trabajo("gastos de oficina") equivale a copiar la hoja de trabajo hoja2 y colocarla después de la hoja de trabajo denominada "gastos de oficina".
Método 3.Move, este método mueve la hoja de trabajo especificada y la coloca en la ubicación especificada. Los métodos de usuario y copia son los mismos, la única diferencia es copiar y cortar.
Método 4.Delete, este método elimina la hoja de trabajo especificada sin parámetros, como la hoja de trabajo ("hoja 2") eliminar.
5. Método para obtener las celdas de la fila y columna especificadas de la hoja de trabajo especificada.
Formato: hoja-objeto. celdas (fila, columna), donde fila y columna son números enteros, y los valores de fila y columna comienzan desde 1.
Por ejemplo, Hoja de trabajo("Hoja2"). La celda (1, 1) equivale a obtener la celda en la primera fila y la primera columna de la hoja 2.
Objeto de rango de verbo (abreviatura de verbo)
Representa un área de medio puente, que puede estar compuesta por varios medios puentes o una unidad.
Hay dos formas de hacer referencia a celdas:
Una es utilizar referencias de celda, como rango("a 1") y rango("a 1:C3").
La segunda es utilizar el nombre del rango de celdas, como Rango("mi Rango").
& ltI >Atributos
1, atributos 1C1 convencionales, utilizados para crear y almacenar fórmulas para celdas o rangos de celdas específicos.
Por ejemplo, rango("C5"). Regular 1c 1 = " = sum(r[-4]c:r[-1]c)"
2. Atributo de valor, que asigna un valor a la celda o rango de celdas especificado. Si hay varias celdas, a todas se les asigna el mismo valor.
3. Los atributos de celda describen la celda de referencia y la celda especificada como una lucha, y consideran la celda especificada como la fila 1 y la columna 1.
Formato: rango-objeto. Celda (fila, columna)
4.Offset, describe la lucha entre la celda a la que se hace referencia y la celda especificada, y trata la celda especificada como fila 0 y columna 0.
Formato: rango-objeto. Celda (fila, columna)
5.Propiedad Nombre, que devuelve o establece el nombre de la celda o rango de celdas especificado.
Luego, en VBA, puedes llamarlo directamente por su nombre.
6.Propiedad Count, que devuelve el número de celdas en el rango de celdas especificado. Solo lectura.
7.Propiedad CurrentRegion, que devuelve el rango de celdas vinculadas en función de los datos de almacenamiento de las celdas.
& ltSecond> Lane
1. El método Select se utiliza para seleccionar el rango de celdas especificado. Después de la ejecución, la primera celda en la esquina superior izquierda del rango de celdas se convierte en la celda activa.
Por ejemplo, rango("a 1:C3"). seleccionar, rango("A1: C3, D5: E6, A8: E8"). elegir.
2. Método Activar, que se utiliza para seleccionar la celda especificada y designarla como celda activa. Por supuesto, sólo la primera celda en la esquina superior izquierda del rango de celdas se convierte en la celda activa.
3.Método AutoFit: ajuste la altura de la fila y el ancho de la columna del área de celda seleccionada para que la altura de la fila y el ancho de la columna se establezcan automáticamente en la altura y el ancho óptimos.
Por ejemplo: rango("a4"). currentregion.select
Seleccionar. DE ACUERDO. Ajuste automático
4. Método Borrar, borra el contenido, formato y comentarios del rango de celdas especificado, equivalente a "Editar->Borrar->Todo"
Por ejemplo: Rango( "A4 :C5”). Borrar
5. Método ClearContents, equivalente a "Editar->Borrar->Contenido".
6.Método ClearFormats, equivalente a "Editar->Borrar->Formato".
7. Los métodos ClearComments y ClearNotes se utilizan para borrar el contenido del rango de celdas especificado, lo que equivale al método "Editar->Borrar->Comentarios"
8. : Copiar la celda especificada Copia el rango de la base de datos al portapapeles o al rango de celdas de destino especificado.
9. Método de corte: corta la base de datos del rango de celdas especificado al portapapeles o al rango de celdas de destino especificado.
10. Método PasteSpecial, utilizado para pegar selectivamente la base de datos de rangos de celdas copiadas o cortadas en el portapapeles en el rango de celdas de destino especificado.
Formato: rango-objeto.pegar pasta especial, operación, enviar espacios en blanco, transponer.
Los parámetros de pegado especifican la selección de datos de tipo de volumen a pegar, como fórmulas, contenido, comentarios, etc. Consulte las indicaciones en el editor VB para conocer valores específicos.