Razvoj dodatkov za Excel

Ko razvijamo dodatke za Excel se prej ali slej srečamo s problemom vzdrževanja programske kode. Na izbiro imamo namreč kar nekaj različnih načinov in okolij za razvoj dodatkov.

Na eni strani imamo VBA, ki je vgrajen v večino Office produktov, na drugi strani imamo programski jezik C in WIN API ter COM, na tretji pa .NET tehnologijo in COM.

VBA

Vsekakor je se potrebno pred kakršnimkoli resnim razvojem za MS Office dodobra seznaniti z programskim jezikom VBA. Razvoj v VBA-ju je nekako najlažji izmed vseh načinov in ima mnogo prednosti:

VBA Prednosti

  • VBA bazira na programskem jeziku BASIC, ki je zelo preprost jezik
  • Zelo dobra podpora znotraj vseh Office programov
  • Vvečino problemov nam reši vgrajeno snemanje makrov – če želite kaj postoriti, začnete s snemanjem makra in ga nato razvijate dalje
  • VBA urejevalnik nam preko vgrajenega ‘InteliSence’-a aktivno in obilno pomaga pri programiranju.
  • Programska koda se ne prevaja, temveč interpretira, kar je za razvoj dobrodošlo, saj lahko programsko kod spreminjamo med razhroščevanjem programa (glej spodaj)

VBA Slabosti

  • Programska koda je zapakirana v posamezen dokument (Excelov XLS ali XLSM oz. XLA in XLAM) kar pomeni slab nadzor nad programsko kodo
  • Programske kode ni možno dajati v repozitorije programske kode
  • Otežena je souporaba kode v več projektih saj VBA ne pozna koncepta knjižnic
  • Programska koda se ne prevaja temveč interpretira (glej zgoraj), kar je lahko slabost, saj se ob prevajanju odkrijejo mnoge napake.
  • Preko VBA ne moremo storiti vsega – določene stvari lahko spreminjamo, popravljamo, dograjujemo samo preko knjižnic v C oz. C++ jezikih.

C / C++

Izmed vseh izbir je to najtežja pot, ki ima glede na naslednjo možnost, torej razvoj v .NET-u eno slabost in eno prednost

C / C++ prednosti

  • Najhitrejša koda in največja možnost nadzora nad načinom izvajanja

C / C++ slabosti

  • Zelo zapleten in dolgotrajen razvoj, slaba (zelo slaba!) literatura

.NET

Za razvoj v .NET-u pa imamo več možnosti, ki so prikazane spodaj.

.NET Prednosti

  • Možna uporaba knjižnic
  • Možna uporaba vseh znanj pridobljenih na področju –NET razvoja vključno z tisiči in tisoči objektov, ki so napisani zanj
  • Glede na prejšnjo točko seveda tudi preprosta možnost povezav do podatkovnih baz, spletnih storitev…
  • Popoln nadzor nad programsko kodo in možnost uporabe repozitorijev programske kode

.NET Slabosti

  • Neintuitivni razvoj
  • Težak dostop do ustrezne literature za dostop do Office automatization objektov

Komentirajte prispevek

This site uses Akismet to reduce spam. Learn how your comment data is processed.