2009-10-09 7 views
14

Où puis-je trouver de la documentation utile pour la programmation VBA? quelque chose comme SitePoint pour le développement HTML. MSDN répertorie simplement et décrit l'opération et les propriétés/méthodes des classes au lieu d'expliquer à quoi elles servent ou quand les utiliser.Ressource de documentation pour les développeurs Office VBA

Les livres sont également les bienvenus.

Répondre

11

J'ai travaillé avec Excel/VBA au cours des deux dernières années et j'ai été très déçu par la qualité de la documentation de base. Le fichier "help" est presque sans valeur. La version MSDN de la même chose est meilleure car elle a de meilleurs liens internes, mais toujours assez mince. Voici quelques ressources que j'ai trouvées utiles:

Écrire des macros Excel avec VBA, 2e édition par Steven Roman. Les chapitres 5-8 ont une vie décente "tour" de la langue (vous pouvez trouver des extraits dans Google Livres):

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

Le VB 6.0 Guide du programmeur, qui applique à la plupart du temps également VBA:

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

Il existe également divers sites Web de consultants Excel «gourous» qui ont beaucoup de matériel d'exemple. Une grande partie de ce programme est présentée sous forme d'Excel en général ou à des non-programmeurs, mais peut toujours être très utile pour la récupération de VBA en général. Deux de ces sites en particulier sont de Chuck Chip Pearson et Charles Williams:

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

http://www.decisionmodels.com/

J'étais sur le point de taper un commentaire désobligeant sur la façon dont je jamais trouvé une spécification de langage VBA, mais je Je pensais que Google nouveau et voilà, à partir de seulement il y a tout juste un an:

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

T Son pourrait contenir les réponses à quelques questions que j'ai résolues seulement par l'expérimentation et en codant les résultats comme tests unitaires ...

1

Des modèles d'objets particuliers qui vous intéressent (modèle d'objet Excel, modèle d'objet Access, etc.) ou tous? J'ai eu une copie de Excel 2003 VBA de Wrox qui était assez décent, ils ont updated it for Excel 2007 (bien que je ne crois pas qu'il y aurait une différence entre les versions 2003 et 2007 car l'extension de VBA a été tirée il y a des années et il y avait un passer à VSTO).

En tant que référence VBA générale, vous feriez mieux de choisir une bonne ressource VB6, car si je me souviens bien, VBA est un sous-ensemble du langage VB6. Quelque chose comme Professional Visual Basic 6 Programmers Reference serait bien.

EDIT:

Le MSDN Visual Basic for Applications page ressemble à un bon point de départ pour les ressources. Voici les Language References

+1

Je ne connais pas les modèles d'objets mais je veux jouer avec Excel et une base de données d'accès et l'interaction entre eux .. –

+0

Ok, je suggère de télécharger les références de langue (compilé HTML fichiers d'aide) et en parcourant les exemples, en les essayant. Vous voudrez également regarder MDAC (Microsoft Data Access Components), en particulier ADO - http://msdn.microsoft.com/en-us/library/ms807642.aspx –

+1

Eh bien, je passais par MSDN mais venant d'un Java En arrière-plan, la documentation arrive comme un choc culturel. C'est comme si je vivais sur une autre planète jusqu'à présent, je ne peux pas sembler digérer la documentation MSDN, je me demande si c'est juste moi ou il y a d'autres qui partagent le même sentiment ... –

1

Si vous trouvez la documentation MS, une approche consiste à utiliser l'enregistreur de macro. Cela ne génèrera pas de code de haute qualité, mais si vous enregistrez les actions que vous voulez que votre programme effectue et examinez le code qu'il génère en utilisant F1 sur tout objet que vous voulez regarder plus en profondeur, cela peut être un bon début.Vous devez juste utiliser un peu de bon sens et nettoyer le code de la macro après.

+0

Oui en effet! J'utilisais la même stratégie à cause des problèmes de documentation ... –

0

Oui, la documentation spécifique à VBA et MSOffice est passée de à peine valeur dans les anciennes versions de MSDN Library à une valeur complètement inutilisable. Un idiot a décidé que ce serait une bonne chose de découpler des objets, des méthodes et des propriétés, et de les traiter comme un concept indépendant et indépendant. Dans le bon vieux temps, vous pouvez rechercher une classe d'objet (par exemple, 'Range' pour Excel), cliquez sur un lien pour Propriétés ou Méthodes pour voir quels p ou m ont été supportés pour cette classe, et ce qu'ils ont fait spécifiquement pour cela classe. Maintenant, tout ce que nous obtenons est une description générique de la classe, aucun lien avec ses propriétés et méthodes. Les propriétés et méthodes sont répertoriées par ordre alphabétique en tant que leur propre entité générique, distincte des classes d'objets. Donc, il n'y a pas de moyen facile, lors de la programmation, de savoir comment utiliser une classe d'objets. Quelles méthodes sont disponibles? Quelles propriétés? Que font-ils? Nous ne savons plus ...

Questions connexes