¿Cuál es una buena manera de aprender y codificar VBA?

El aprendizaje y la codificación en Excel VBA (en realidad en cualquier lenguaje de programación con una ligera modificación) requiere que siga estos pasos:

  1. En primer lugar, consiga el entorno VBA de Excel: cómo mostrar la pestaña de desarrollador, abrir la ventana de Código, guardar un archivo con macro, etc.
  2. Ahora tiene que darse cuenta: cómo usar el Grabador de macros básico puede generar código para realizar algunas tareas (aprender esta técnica le ayudará más adelante cuando escriba códigos complejos).
  3. Tercer paso: cuando haya terminado con el primer paso, ahora tome cualquier libro sobre Excel VBA o si es un tipo de video, vaya a YouTube o tome un curso en Excel VBA; Donde aprenderá paso a paso la sintaxis de Excel VBA, repito, paso a paso. Eso es lo más importante en cualquier lenguaje de programación: aprender la sintaxis. Si no tiene ningún conocimiento previo en ningún lenguaje de programación, pase un buen tiempo aprendiendo y practicando la sintaxis, los objetos, las colecciones, las propiedades, los métodos, las variables y los diferentes tipos de construcciones (IF – THEN, FOR – NEXT, CON – TERMINE CON, SELECCIONE EL CASO).
  4. Ahora aprenda cómo crear y usar UDF (funciones definidas por el usuario, sus funciones creadas) con uno o dos argumentos o un rango como argumentos.
  5. Ahora aprende a crear y usar formularios de usuario.
  6. El último paso es: aprender a trabajar con Excel Events.

Puede obtener un tutorial paso a paso aquí: VBA y Macros en Excel – Una guía completa paso a paso.

Ahora ya sabes lo básico. Eso no es todo. Tienes que hacer programación, rediseñando el código ya disponible.

Utilizo una técnica para entender cualquier lenguaje de programación más rápido:

Mi técnica es: visualizo el código.

Visualizo toda la RAM (la memoria de la computadora) como un lugar de algunas celdas. Una celda donde puede guardar un número, un texto o nada. Estos son los pasos que utilizo para visualizar el código:

  1. Empiezo a leer el codigo
  2. Dibujé las variables como algunas celdas en un papel duro o en una hoja de Excel.
  3. Ahora observo cómo los valores en las celdas están cambiando con los avances del código.
  4. Cuando una celda cambia sus valores antiguos, la golpeo y escribo los nuevos valores por encima de los valores antiguos.
  5. De esta manera, cuando se hace todo el código, entiendo el código en su totalidad.

Después de estudiar algunos códigos en el procedimiento anterior, podrá codificar de la misma manera.

Gracias por leer mi largo post. Que tengas un buen viaje con el mundo de Excel VBA.

Si usted es completamente nuevo en VBA para Excel (vale la pena notar que VBA varía ligeramente para otras aplicaciones) mi consejo sería simplemente quedarse atascado. Use la grabadora de macros incorporada para grabar acciones, y luego vaya y mire y juegue con el código. Esto es exactamente lo que hice (autoaprendí VBA a un nivel bastante avanzado).

En términos de recursos, tengo muchos libros de VBA, pero mi favorito es “VBA y macros para Microsoft Excel” de Bill Jelen y Tracy Syrstad. Está lleno de excelentes ejemplos de la vida real y los negocios, con un código de ejemplo que puede levantar y cambiar a su propio código.

También recomendaría altamente las preguntas de Google. Si desea un código para algo, es probable que alguien más haya necesitado lo mismo o algo similar y lo haya publicado en línea.

Un último consejo, vale la pena meterse en los hábitos de buenas prácticas desde el principio, es decir, sangrar el código correctamente y, lo que es más importante, comentar el código.

Disfrutar. Cualquier pregunta no dude en preguntar.

Ceniza

Comencé a escribir macro para el desarrollo de herramientas pequeñas, como combinar N número de archivos de Excel en uno, consolidar datos en una sola hoja a partir de varios archivos diferentes y validar fotos con el nombre del archivo, el tamaño del archivo, el píxel y en la ruta estructurada de la carpeta, etc.
Por lo tanto, primero comience a implementar la mayoría de las fórmulas (como SUMIF, IFERROR, VLOOKUP, COUNTIF, lógica IF con varias condiciones, etc.) en la manipulación de datos y la generación de informes. Luego intente implementar las fórmulas en una función de macro VBA para N número de Excel sobresalga, como abrir un archivo Excel uno a uno en la ruta de la carpeta correspondiente, implementando la lógica de generación de informes en los archivos respectivos y consolidando los archivos completos en una sola hoja llamando la fila y la columna de forma secuencial con la lógica correcta.
Estructura básica a seguir por escrito VBA Macro es
1.Definiendo variables con tipos de datos correctos,
2. Acceder a hojas de Excel o archivos de Excel al definir la llamada a la función excel.
3. Colocar las hojas o archivos de Excel en la lógica secuencial correcta al implementar la manipulación de datos o la generación de informes.
4. Cierre toda la función de llamada.
Hay muchos ejemplos que se ofrecen en varios sitios web para aprender macros, pero comience con su propia herramienta simple y obtenga la sintaxis lógica o de fórmula de Google.

Primero, ayuda tener un proyecto real, no un proyecto falso inventado que no te importa.

Un ejemplo podría ser un simple sistema de ingreso de datos para rastrear sus finanzas personales. Algo más sencillo que Quicken. Algo que es útil en el momento de impuestos. Creé un guión que me ayuda a sumar mis millas de conducción que ingresé desde mi cuaderno.

Hay dos pasos principales:

(1) Diseño de formulario

(2) Codificación

Una primera tarea importante de aprendizaje es entender cómo hacer referencia a una celda de Excel en VBA.

Hojas (“Hoja1”). Células (fila, columna) .Valor

Fondo
Si no conoce Visual Basic o Basic, deberá volver atrás y estudiar eso, especialmente si planea hacer cualquier tipo de E / S de archivos y manipulación de cadenas.

Ya debe comprender los principios básicos de codificación comunes a todos los idiomas: asignaciones, operaciones numéricas, constantes, funciones / subrutinas, estructuras, sentencias condicionales y bucles de control.

Configurar el trabajo: algunas cosas que harás cada vez
Necesitará desarrollar un código para navegar por su hoja de trabajo. Mis botones más comunes están atrás y adelante. Utilizo una variable larga global para mi contador de filas si es necesario en todas partes. (Ah, y tendrá que entender qué variable se recuerda y cuándo está dentro de su secuencia de comandos). Su página nunca puede tener menos de 1 fila y 1 columna. La mayoría de las veces, una fila comenzará en 2 después de la fila del encabezado. El área constante en la parte superior es donde se ponen cosas como cuando se inician los datos de la hoja, la ruta del archivo si sus datos abren un archivo, la URL del sitio web si accede a un sitio web, la configuración de su formulario, etc.

Convenciones de nomenclatura: establezca de inmediato cómo va a nombrar sus objetos. Me gusta usar “lbl” al principio de todos los objetos de etiqueta. “txt” delante de todos los objetos del cuadro de texto. “frm” es antes de todos los objetos de forma.

Esquemas de color: ¿Le gusta el aspecto gris predeterminado o prefiere el color en sus formularios? Si es para uso personal, elija los colores que mejor se adapten a su computadora / computadora portátil. Los colores son referenciados por código hexadecimal. Una forma de configurar los colores es establecerlos en tiempo de diseño y luego copiar los códigos a nombres de colores constantes, luego usar los nombres cuando se configuran los colores según sea necesario.

Funciones de los botones: entienda cómo usar el botón habilitar y deshabilitar para evitar que el clic del botón no esté listo para su uso. (No desea ejecutar ese script antes de que haya datos para procesar). Si tiene un proceso que toma tiempo del sistema como un trabajo de guardado o una carga de la página web, el botón se habilita cuando se completa el proceso.

Mensajería: ¿Cómo planea enviar mensajes a usted o a su usuario cuando se hace clic en los botones o se realiza un proceso? (O se encuentra un error.) Una forma es tener una barra de mensajes. Algunos usan el cuadro de mensaje emergente para obtener atención adicional. Puedes usar esto también para depurar mensajes.

Manejo de errores: una parte importante de la capacitación en programación es cómo prevenir y atrapar errores. Si su búsqueda en la base de datos aparece vacía y no debería hacerlo, sería un caso para que aparezca un cuadro de error especial y le diga que ha perdido la conexión con su base de datos. El principio general es mantener su programa en ejecución en todo momento y no “volcado de núcleo” si sucede algo inesperado.

Prueba de código: Pruebe todos los puntos finales esperados. Asegúrese de que va a funcionar en las filas más allá de la fila de entero mínima. No puede ser más grande que la fila máxima de Excel. ¿Qué pasa si ingresas letras y no todos los números?

Resumen

  • Encuentra algo útil para crear, preferiblemente para tu propio uso.
  • Si intenta aprender para un proyecto de trabajo sin conocimientos de codificación, será un camino muy largo, pero tiene Internet para ayudarlo.
  • Haz un boceto de lo que quieras. (o usar PowerPoint)
  • Liste lo que debe hacer su formulario / script.
  • Diseña el formulario.
  • Nombre y luego haga clic en los botones para generar el código del botón.
  • Código de diseño para ejecutar cuando se hace clic en los botones.
  • Piensa en todas las formas en que puede salir mal. Agregue código para hacer la forma más robusta (“a prueba de balas”).
  • Código de prueba en una variedad de condiciones
  • ¡Disfruta y usa tu primera aplicación de Excel VBA!

La forma típica de aprender es:

  1. Tome un libro, un tutorial de YouTube o un manual y aprenda la sintaxis y algunos conceptos básicos.
  2. Desarrolle sus aplicaciones. Esto es cuando realmente vas a aprender .

Después de tener una idea de cómo funciona el lenguaje, probablemente después de hacer algunos pequeños ejercicios, probará lo que ha aprendido y realmente entenderá cómo codificar después de codificar algunas tareas o aplicaciones.

Es como casi todo en la vida.

No aprendes a cocinar, lee, sino cocinando . La lectura ayuda, pero en realidad está haciendo algo cuando realmente aprendes.

1. Tutoriales gratuitos:

Programación Excel VBA

Dominio de la macro de Excel

Aprende VBA – Un tutorial interactivo

2. Video tutorial:

3. Libro para principiantes:

Excel 2016 para Dummies (Excel para Dummies)

4. Tutorial pagado

Únete al curso de Excel VBA JETPACK

El sitio web (Trump Excel) también tiene excelentes consejos de Excel.

Cuatro grandes recursos para aprender VBA

1. ExcelMacroMastery .Com

Este nuevo blog es un gran recurso para aprender VBA

Para el principiante / principiante total
Cómo empezar desde cero con Excel VBA

Esta es una lista de todos los mensajes.
Una guía rápida de este sitio

2. Chandoo .Org
Algunos grandes artículos aquí en VBA y Excel
Excel VBA – Información, tutoriales, ejemplos y recursos

3. Chip Pearson
El sitio web parece que es de los años 90, pero la información aquí es de oro sólido.

Pearson Software Consulting, LLC, información completa de Excel

4. InicioAprendizaje. Org
Alguna excelente información para el principiante.
Programación Excel VBA

Aprender VBA es como aprender a conducir. Requiere práctica, práctica y más práctica.

La mejor de las suertes
Peter

Daré una respuesta parcial y pondré mi propio sitio web en la mezcla, pero aquí están algunos de mis sitios favoritos que cubren VBA.

TheSpreadsheetGuru: un blog de código macro de VBA
Chip Pearson: Índice de temas de CPearson.com
JKP: Artículos Excel

Puede encontrar mi lista completa de recursos a continuación, que incluye algunas recomendaciones excelentes para el foro de Excel.

TheSpreadsheetGuru: Recursos en línea de Excel y VBA

Si está comenzando, le recomiendo que tome un curso o lea un libro (los cursos suelen ser más efectivos, especialmente si es nuevo en la codificación). Aquí hay un curso que recomendaría que tomen, que acaba de salir hace unas semanas.

Excel Campus: El curso VBA Pro para Excel

Por favor, consulte los siguientes libros y sitios web.

Libros

  1. Excel 2010 Power Programming con VBA
  2. Programación Excel VBA Para Dummies
  3. VBA y macros: Microsoft Excel 2010 (MrExcel Library)

Sitios web :

  1. Programación Excel VBA
  2. Aprende Excel, Gráficos en línea

Aprenda a través de la práctica, intente implementar cualquier código existente (MATLAB o C o C ++) en vba.

VBA se puede aprender a través de una serie de fuentes. Su pregunta sugiere, “una buena manera”. Primero debes tener una idea del entorno y qué es exactamente, que es donde entro y comparto este> Enlace

Aquí hay una lista de enlaces. Elige tu favorito.

Página de Anthony VBA de Excel

Tutorial Excel Macros (VBA)

Estructura de control:

Top Ten Excel VBA Control Structures

y recomiendo este libro:

Programación Excel VBA para Dummies, 3ra Edición

Todo lo mejor VBAing

Mis mejores fuentes de VBA son leer códigos de otros y grabar mi código (en Excel) y luego entender lo que acabo de hacer.

Pearson Software Consulting, LLC, información completa de Excel

Excel VBA. Código Excel VBA GRATUITO y Ayuda Macro Excel

Mas alla de excel

Microsoft no es malo una vez que sabes qué buscar …

En mi experiencia, la mejor manera de aprender VBA es simplemente usándolo. Para esta respuesta, asumiré que tienes una idea básica de qué son los lenguajes de programación y cómo funcionan.

Aprendiendo VBA

  1. Grabar macros : un buen punto de partida es grabar algunas macros simples. Estos le mostrarán cómo hacer muchas cosas, como la selección de rangos, el pegado de copias, el cambio de hojas, el cambio de valores, etc. Estos simples bloques de construcción generalmente ayudan mucho al crear macros. Una vez que haya grabado la macro, vaya a ver el código y ajústelo . El código generado automáticamente es generalmente horrible y nunca debe usarse. Lea las líneas que se crearon, elimine las que son irrelevantes y cambie las que realmente necesita.
  2. Busque en Google lo que no sabe : después de crear algunas macros basadas en su conocimiento de grabación, tendrá lagunas importantes. Comience a buscar en Google para ver cómo puede llenar estos. VBA está muy bien documentado en varios foros y blogs de Excel, por lo que para el 99,99% de los problemas que se le presenten, Google encontrará una solución. Sea muy específico (por ejemplo, ‘cómo seleccionar un rango con nombre en VBA excel’) y será recompensado
  3. Confíe en autocompletar : si es como yo, no usará VBA todo el tiempo. Entonces, esto significa que a menudo escribirás algo, luego lo olvidarás y luego terminarás escribiéndolo nuevamente 2 meses después en un proyecto diferente. Después de un tiempo empiezas a buscar en Google las cosas que ya has buscado en Google. En este punto, por lo general prefiero “experimentar”. Por ejemplo, si quiero pegar una selección de valores, escribiría ‘Selección’ y el editor de VBA me mostrará con qué puedo completarla.

Para más detalles por favor visite: excel vba

Si tienes un fondo de programación, entonces la respuesta de Riyaj es buena. Si no, entonces compraría un libro para comenzar, realmente cualquier introducción al libro de programación Vba. Si bien la recodificación de macros es útil para aprender la sintaxis específica de Excel, no le enseñará conceptos básicos como control de flujo (if, bucles, etc.) o conceptos básicos de estructura (funciones contra subrutinas, tipos de datos primitivos de objetos, etc.)

Puedo ayudarte con buenos sitios donde puedes aprender y codificar VBA de una buena manera.

Puede visitar estos mejores sitios que pueden ayudarlo de una buena manera a aprender y codificar VBA:

Yodalearning: consejos y trucos: de básico a avanzado | Excel, PPT, VBA Macros

Capacitación corporativa: Excel avanzado, PowerPoint, macros VBA, Outlook

Aprende consejos y trucos de Excel en hindi | Consigue Excel Videos de entrenamiento en Pendrive

Estos sitios anteriores lo ayudan a aprender y a codificar VBA de una buena manera paso a paso y también ofrecen cursos GRATUITOS de una buena manera de entender.

Aprende VB en su lugar. VBA es un subconjunto. VBA es un lenguaje de scripting que es en su mayoría idéntico.

VB tiene más seguridad de tipo que es altamente instructiva como mínimo y evita errores. VBA se compila sobre la marcha, mientras que VB se compila previamente, lo que también facilita la localización de errores. Sin embargo, son en su mayoría idiomas idénticos.

Puede encontrar muchos ejemplos de código VBA utilizando el menú de ayuda de la consola, Google, etc.

La mejor manera de aprender VBA es copiar un código de ejemplo simple en la consola y ejecutarlo para ver sus resultados.

Cuando tenga confianza con eso, comience a cambiar el código para obtener resultados diferentes. Usa tantas funciones y variables diferentes como puedas.

Necesitará muy rápidamente un proyecto o problema para resolver si desea que esto le permita mantener su interés.

Mis proyectos culminaron en un software que predice el mercado de valores.

Supongo que los tutoriales en video son los mejores y los medios más rápidos para aprender, no solo VBA, sino cualquier cosa. Los videos son realmente buenos para los novatos y ahorrarán mucho tiempo. Puedo recomendar videos de youtube para ti. Allí puedes encontrar muchos tutoriales de autores populares. Incluso tengo un canal de youtube donde publico tutoriales de software. Hace apenas un par de días que publiqué: Tutorial de Excel VBA Tutorial de Excel Macros de VBA – Cómo crear una tabla de números del 1 al 100 usando macro

Solo quiero complementar la respuesta de Ash Patel. Si alguna vez necesita ayuda o desea leer algunas sub rutinas o funciones bien escritas, siempre puede consultar el foro http://www.ozgrid.com . Hay un montón de personas útiles y con experiencia.

Siempre me ha gustado el sitio web de Dev Guru: está destinado a cubrir el script de VB, pero es un excelente lugar para comenzar con lo básico …

http://www.devguru.com/technolog

Me enseñé a ser un programador VBA funcional en aproximadamente dos meses. Y ahora lo he usado varios informes / proyectos en el trabajo.

Utilicé el canal de YouTube Wiseowl Tutorials. No solo te enseña a codificar, sino que también extrae conjuntos de datos de otras fuentes utilizando VBA. Y combinando diferentes técnicas de codificación para que sepa cómo usarlo en diferentes cosas y diferentes proyectos.

El sitio web a su tutorial es wiseowltutorial.com.uk

Hay muchas fuentes disponibles en línea para aprender la programación de VBA. Encuentra los mejores tutoriales en Google y comienza a aprender todo lo básico. Aprenderás día a día.