2009-10-09 5 views
14

¿Dónde encuentro documentación útil para la programación de VBA? algo así como SitePoint para el desarrollo de HTML. MSDN simplemente enumera y describe la operación y las propiedades/métodos de las clases en lugar de explicar para qué se usan o cuándo usarlos.Recurso de documentación para desarrolladores de Office VBA

Los libros también son bienvenidos.

Respuesta

11

He estado trabajando con Excel/VBA de forma intermitente en los últimos dos años y me ha decepcionado mucho la calidad de la documentación básica. El archivo de "ayuda" es casi inútil. La versión de MSDN de la misma cosa es mejor porque tiene mejores enlaces internos, pero aún bastante delgada. Aquí están algunos recursos que he encontrado útiles:

escritura macros de Excel con VBA, 2ª edición por Steven Romano. Capítulos 5-8 tienen una decente "recorrido" de la lengua (se puede encontrar fragmentos en Google Books):

http://www.amazon.com/Writing-Excel-Macros-VBA-2nd/dp/0596003595#noop

La VB 6.0 Guía del programador, que en su mayoría también se aplica a VBA:

http://msdn.microsoft.com/en-us/library/aa716285(VS.60).aspx

también hay varios sitios web consultor de Excel "gurú" por ahí que tienen una gran cantidad de material de ejemplo. Gran parte de ella se lanzó a Excel en general oa quienes no son programadores, pero aún puede ser bastante útil para elegir VBA en general. Dos de esos sitios en particular, son de Chuck chip de Pearson y Charles Williams:

http://www.cpearson.com/excel/mainpage.aspx

http://www.decisionmodels.com/

estaba a punto de escribir un comentario despectivo sobre la forma en que nunca he encontrado una especificación de lenguaje VBA, pero pensé en google de nuevo y he aquí que, desde hace apenas un año:

http://msdn.microsoft.com/en-us/library/dd361851(PROT.10).aspx

T Su poder contener las respuestas a algunas preguntas que han resuelto sólo mediante la experimentación y la codificación de los resultados como pruebas unitarias ...

1

Cualquiera de los modelos de objetos particulares que le interesaban (modelo de objetos de Excel, acceso Object Model, etc.) o de todos ellos? Tenía una copia de Excel 2003 VBA de Wrox que era bastante decente, tienen updated it for Excel 2007 (aunque no creo que haya una diferencia entre las versiones de 2003 y 2007, ya que la extensión de VBA fue retirada hace años y hubo un impulso para pasar al VSTO).

Como referencia general VBA, que sería mejor para recoger un buen recurso VB6, ya que si no recuerdo mal, VBA es un subconjunto del lenguaje Visual Basic 6. Algo como Professional Visual Basic 6 Programmers Reference sería bueno.

EDIT:

El MSDN Visual Basic for Applications page parece un buen punto de partida para los recursos. Aquí están los Language References

+1

No sé sobre modelos de objetos, pero quiero jugar con Excel y una base de datos de acceso y la interacción entre ellos .. –

+0

Ok, sugiero descargar las referencias de idiomas (HTML compilado) archivos de ayuda) y mirando los ejemplos, probándolos. También querrá ver MDAC (Componentes de acceso a datos de Microsoft), particularmente ADO - http://msdn.microsoft.com/en-us/library/ms807642.aspx –

+1

Bueno, iba a través de MSDN pero provenía de Java De fondo, la documentación llega como un choque cultural. Es como si hubiera estado viviendo en otro planeta hasta ahora, parece que no puedo digerir la documentación de MSDN, me pregunto si es solo yo o hay otros que comparten el mismo sentimiento ... –

1

Si usted está encontrando la documentación de MS, un enfoque consiste en hacer uso de la grabadora de macros. No generará código de alta calidad, pero si registra las acciones que desea que tome su programa y revise el código que genera utilizando F1 en cualquier objeto que desee profundizar, puede ser un buen comienzo.Simplemente tiene que usar un poco de sentido común y limpiar el código de macro después.

+0

¡Sí, claro! Estaba usando la misma estrategia debido a los problemas de documentación ... –

0

Sí, la documentación específica de VBA y MS Office ha pasado de tener poco valor en las versiones anteriores de MSDN Library, a shite completamente inutilizable.

Algunos idiotas decidieron que A GOOD THING (TM) sería un desacoplamiento de objetos, métodos y propiedades, en lugar de tratar cada uno como un concepto independiente e independiente. En los buenos viejos tiempos, puedes buscar una clase de objeto (por ejemplo, 'Rango' para Excel), hacer clic en un enlace para Propiedades o Métodos para ver qué p's o m's fueron compatibles con esa clase, y qué hicieron específicamente para ese clase.

Ahora, todo lo que obtenemos es una descripción genérica de la clase, no hay un enlace a sus propiedades y métodos. Las propiedades y los métodos se enumeran alfabéticamente como su propia entidad genérica, separada de las clases de objetos.

Por lo tanto, no hay una manera fácil, al programar, para descubrir cómo USAR una clase de objeto. ¿Qué métodos están disponibles? ¿Qué propiedades? ¿Qué hacen? Ya no sabemos ...

Cuestiones relacionadas