12
votes

Quel est l'avenir de VBA?

Avec les nouvelles versions 2007 de MS-Office, Microsoft a commencé à "menacer" VBA Avec VSTA . Puisque VBA est assez couramment utilisé, que croyez-vous que son avenir est en termes de développement de script pour les 3-5 ans suivants?

ou, sera-t-il tué soudainement, comme VB6?

Autodesk aussi déposé (genre de) sur Audience de nouvelles de la SP.


11 commentaires

VBA est toujours le seul moyen significatif de programmer l'accès MS.


@John: c'est drôle. Personne ne veut VSTA d'ailleurs. VBA est venu de Microsoft qui est utilisé efficacement. Les non-développeurs pourraient également l'utiliser avec une certaine facilité. Pourquoi les gens demanderaient-ils VSTA, quand il utilise Com Interop à la fin de la journée?


C'est pourquoi quelqu'un pourrait besoin VBA, pas pourquoi quelqu'un pourrait vouloir . Si Office 2010 a utilisé VSTA au lieu de VBA, quelqu'un serait triste?


Com Interop? Que veux-tu dire? Cela vous donne un accès direct à tous .NET.


Je suis sûr que cela prendra tout à fait avant de jeter de la sorte. Même si vous / j'utiliserai .NET (VSTA), nous traiterons indirectement. VBA ou VB est toujours le meilleur moyen de traiter avec com. Qu'en penses-tu?


@John Saunders - Il y a beaucoup de gens qui ont investi du temps et de l'argent dans VBA et n'apprécient pas que ce soit ici un instant, parti ensuite. Entendu parler de la compatibilité en arrière et des périodes de grâce?


.Net apporte dans son cadre qui pourrait être une grande chose pour le développement de bureaux. Par com Interop, je veux dire - Bibliothèques de bureau sera disponible sous forme de COM DLLS et il y aura des wrappers .NET autour de lui.


Je ne sais pas ce que vous obtenez. VSTA vous donne un accès complet au .NET Framework. Bien sûr, si vous avez affaire à une API d'automatisation, vous allez toujours faire COM. Mais pour tout le reste, vous aurez le cadre complet .NET à votre disposition.


@ldigas: Je suis sûr que VBA disparaîtra tout aussi rapidement que VB6 l'a fait. Oh, attends, tu veux dire que vb6 est toujours là? Peut-être que VBA sera aussi bien.


.NET Framework à votre disposition ne vient pas gratuitement. Cela vient avec sa propre complexité. Il faut du temps, de l'argent et de l'apprentissage dans une partie des développeurs / entreprises à mettre à niveau vers quelque chose simplement parce que la SP va baisser le soutien. Je veux dire - si les gens ont des solutions de travail avec un ensemble limité de fonctionnalités - pourquoi dans le monde, ils doivent soigner .NET Framework?


@shahkalpesh - ma pensée exactement. Sans parler de la productivité Sudded Baisse de la période donnée sur une certaine période pour atteindre les mêmes fonctionnalités que vous avez présentées avant le commutateur.


4 Réponses :


2
votes

La langue a changé et la façon dont les choses ont été faites (c'est-à-dire une forme de glisser-déposer, créer une macro, modifier quelques lignes et vous avez terminé) changera également.

Il ne restera pas un outil, lequel un non-développeur trouvera facile à utiliser.

Le modèle d'objet doit rester identique pour des trucs de base (classeur, feuille de calcul, plage), etc. Un nouvel ensemble de choses sera ajouté et qui changera le modèle d'objet et donc un nouvel apprentissage (E.G. Interface de ruban)

ne pas oublier, .Net apporte dans ses propres concepts / complexité.


1 commentaires

Oui je suis d'accord. Pourquoi est-ce que vous trouvez toujours lorsque vous trouvez un concept que les non-développeurs trouvent faciles à utiliser, alors vous désélectionnez de le changer. VB6 et VBA étaient de grandes choses productives à cause de cette raison (d'autres aussi, mais celle-ci était majeure).



6
votes

Je suggérerais que VB6 n'a pas été tué soudainement. Soutien officiel de la MS, peut-être, mais toujours la communauté est en vie pour les deux VB6 et VBA ici sur SO.

Comme avec une technologie avec une large base de fournisseurs d'utilisateurs / client / 3ème partie, il faudra beaucoup de temps pour VBA en tant que technologie de script pour disparaître. J'imagine que cela prendra des années pour son successeur pour dépasser complètement VBA.


3 commentaires

Oui, mais avec le nouveau système d'exploitation viendra lentement, cela va pour le dernier tuer. Je ne connais personne qui a fusionné avec succès leurs trucs de VB6 à Vista de XP, et le fait courir de manière raisonnable, sans penser simplement à passer à .Net et à réécrire le tout.


Personnes intelligentes. Courir un peu tard, mais intelligent.


J'espère que vous ne voulez pas dire que je suis un idiot;)



3
votes

Cela mourra, imo, mais pas soudainement. Excel utilisé pour avoir une macro-language appelé XLM - essentiellement une lecture du clavier sur les stéroïdes. XLM est toujours soutenu et il y a une douzaine de personnes qui l'utilisent. C'est pourquoi je pense que VBA sera autour depuis un certain temps. Il ne sera pas mis à jour, pris en charge, et peut-être pas même reconnu, mais ce sera disponible.

Plus tôt ou ultérieur MST intégrera .NET avec des applications de bureau et moins de personnes se soucieront de VBA. À l'heure actuelle, je peux mettre des vba dans une feuille de calcul Excel, l'envoyer à un client et le déploiement est effectué. Je peux dire au service informatique C'est un classeur Excel avec des macros, et ils ne se sentent pas menacés car ils ne savent pas mieux. Lorsque .NET a des options de déploiement qui simples, je vais l'utiliser à la place. Ce jour-là viendra et VBA va lentement disparaître disparaître.


1 commentaires

Oui tu as raison. Mais .xlm, maintenant un peu dépassé, était un, comment le mettre, local pour exceller. VBA, au moins dans mon cas, est réparti sur plusieurs applications et nous l'utilisons beaucoup pour interconnecter ces applications (par exemple, les tables et les coordonnées d'Excel à AutoCAD). C'est un autre aspect de ce changement - même si vous le modifiez (MS), tous les autres fournisseurs doivent encore faire le changement.



6
votes

Accepter avec Dick Kusleika sur le déploiement

Les problèmes de VBA déprécant sont les suivants:

  1. Facilité de déploiement
  2. Visual Studio - une autre IDE pour apprendre
  3. Pour l'énorme base de fonctionnement, des applications VBA critiques d'entreprise, où rien ne sera ajouté par .NET, pourquoi voudrait-on dépenser l'effort et le temps de migrer?
  4. avec VBA, les non-développeurs peuvent assommer des applications utiles rapides dans Excel / Word, etc. Vous ne pouvez pas faire cela avec .NET / VSTO.

1 commentaires

Tous les points sont frappés sur la cible. C'est 2018 et je codis sur VBA.