Thread: De voordelen van dotNET tov VBA
-
03-06-2012, 18:28 #1Banned
- Registered
- 13/05/06
- Location
- Hoeselt
- Posts
- 9,944
- iTrader
- 48 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 0/72
De voordelen van dotNET tov VBA
Hi allemaal,
Op ons werk zijn ze redelijk vastgeroest in een Office 2003 (tot kort nog 2000) omgeving.
Alles wat ik dien te developen of te onderhouden gebeurt dus in VBA.
Nu had ik een hele interessante (maar ook dure) cursus C# dotNET 4.0 gevonden. Ik moet nu echter op het werk aantonen wat voor voordeel deze skills mij als developer en het bedrijf kunnen opleveren...
Aangezien VBA altijd een groot deel van de software bij ons zal blijven aansturen, heb ik zelf moeite met dergelijke redevoering. (ik heb trouwens al schrik voor de dag dat wij naar 2010 gaan overstappen...)
Hierbij hoor ik graag jullie meningen!no votes
-
-
03-06-2012, 18:50 #2
Met hoeveel developers zitten jullie daar ongeveer?
Want enkel de voordelen opnoemen voor jou alleen geeft geen extra business value imo.no votes
-
03-06-2012, 19:50 #3Banned
- Registered
- 13/05/06
- Location
- Hoeselt
- Posts
- 9,944
- iTrader
- 48 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 0/72
Ik ben jammer genoeg de enige in mijn facility...
Uiteraard zijn er ook dingen die je niet zomaar met VBA kan, zoals tekst uit een PDF extracten. Met een library voor dotNet is zoiets snel gefixt.no votes
-
03-06-2012, 19:53 #4Member
- Registered
- 04/11/03
- Location
- Wervik
- Posts
- 1,901
- iTrader
- 35 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 1/14
Over welke automatiseringstaken hebben we het hier ook? Full .net kan wel wat overkill zijn als het gaat om eenvoudige excel of word document taken.
no votes
-
03-06-2012, 19:57 #5Banned
- Registered
- 13/05/06
- Location
- Hoeselt
- Posts
- 9,944
- iTrader
- 48 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 0/72
Ik werk nu aan een project waarbij we data uit een SAP in txt in een database extracten en die vergelijken met data uit diverse excelfiles. De berekeningen hierachter gaan toch wel iets verder dan automatiseringstaken.
no votes
-
03-06-2012, 20:14 #6
Dat is juist positief in dit geval. Ander leek het er op dat je een opleiding wil, en dan kan gaan lopen wanneer je wil
.
Bijgevolg kan je dus het .NET framework gebruiken om bv excel mogelijkheden toe te voegen aan een custom .NET applicatie etc. De mogelijkheden zijn dus groter en op een dag ging het sowieso wel gebeuren.
Dusja argumenten? Het gehele .NET framework helpt bij RAD en het is meer toekomst gericht. Verder bestaat er ook VB.NET dus geen groot gemis als jij voor C# kiest en een ander bij VB blijft, imo.no votes
-
03-06-2012, 22:33 #7Banned
- Registered
- 13/05/06
- Location
- Hoeselt
- Posts
- 9,944
- iTrader
- 48 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 0/72
^ Ik heb wel al gemerkt dat C# niet zo heel goed met Office omkan.
Ik schrijf nu tussendoor (vooral om de taal dan te leren) aan een Excel 2003 wrapper, die gebruik maakt van de Excel Interop van Microsoft. Als ik dan zie wat er nu allemaal dient te gebeuren en in VBA maar diende te gebeuren, doe ik mezelf nog twijfelen...no votes
-
04-06-2012, 11:27 #8Member
- Registered
- 04/11/03
- Location
- Wervik
- Posts
- 1,901
- iTrader
- 35 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 1/14
Ikzelf gebruik NPOI NPOI om excel bestanden te lezen en te schrijven, je zit dan wel vast aan het 2003 formaat (.xls). Dit heeft het voordeel dat excel niet geinstalleerd hoeft te worden op de pc die de berekeningen moet uitvoeren. Het heeft ook het voordeel tov full .net dat je versie-onafhankelijk werkt. Want als jij nu een proggie schrijft op een pc waar 2007 in staat, dan ga je de 2007 interop dll versie gebruiken en dat is onbruikbaar als je dat proggie dan wil gebruiken op een pc met 2010 bijvoorbeeld. Er bestaan hier oplossingen voor, maar ik vond het allessinds brielen vandaar mijn voorkeur voor NPOI die onafhankelijk werkt van excel zelf.
VBA zal natuurlijk wel geoptimaliseerd zijn om met excel te werken, dus dat kan wel goed zijn dat het eenvoudiger is.
Maar als ik het goed begrijp dan moet je het programma altijd ombouwen als het bedrijf op een volgende excel versie overstapt (uw huidige situatie). Dus dan kan .NET met NPOI wel zijn voordelen hebben imo.no votes
-
04-06-2012, 12:51 #9Banned
- Registered
- 13/05/06
- Location
- Hoeselt
- Posts
- 9,944
- iTrader
- 48 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 0/72
Klopt inderdaad dat wij een probleem gaan hebben wanneer we gaan overschakelen naar 2007/2010.
Nuja, of ik vanaf dan .NET ga gebruiken om Office aan te sturen of VBA blijf gebruiken, aanpassen moet ik sowieso.
Ik zoek dus nog redenen om mijn management te overtuigen om effectief de dotNet overstap te maken (en bijgevolg mij ook de cursus te laten volgen).
Wat jij hier aanhaalt is in ieder geval al een mooi argument.
Ook: kan ik een Access database vlot aansturen met dotNET 4.0 of moet ik eerder gaan kijken naar SQL?no votes
-
04-06-2012, 19:38 #10
de libs voor office zijn exact hetzelfde voor vb of c#. ik heb al verschillende scripts van oude vba vertaald naar c# en de manier van werken (excel aanroepen, werkboek openen, cellen aanspreken en aanpassen) is zo goed als hetzelfde ze.
Een groot voordeel voor .net is dat ge dan ook heel de .net bib tot uw beschikking hebt en dus veel makkelijker en sneller tot een goed resultaat zult komen dan met vba. na verloop van tijd zullen de kosten voor uw werkgever dus hopelijk dalen omdat ge meer kunt doen in dezelfde tijd
nadeel is dat voor zover ik weet ge minstens visual studio profesional nodig hebt (express misschien met veel prutsen maar dat is niet aan te raden), en die is niet gratis.Last edited by falc.be; 04-06-2012 at 19:44.
dudeno votes
-
04-06-2012, 19:46 #11no votes
-
05-06-2012, 10:05 #12Banned
- Registered
- 13/05/06
- Location
- Hoeselt
- Posts
- 9,944
- iTrader
- 48 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 0/72
Ik denk dat jij het nu voornamelijk over Office 2007/2010 hebt? Ik ben bezig aan een Excel 2003-wrapper en hoewel alles ondertussen zeer logisch is, merk ik toch verschillen met VBA.
Het klopt dat de VB en C# lib hetzelfde zal zijn voor Office. Ik bedoelde eerder dotNET ipv C#. (een slechte gewoonte die ik dringend moet afleren).no votes
-
05-06-2012, 10:16 #13Member
- Registered
- 11/09/02
- Location
- <*-_-*>
- Posts
- 1,493
- iTrader
- 12 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 0/0
Ik heb jaren in VBA geprogrammeerd en ivm automatisatie kan je gewoonweg alles doen, ik denk niet dat ik iets ben tegengekomen dat ik niet kon oplossen met vba code.
De kost is een groot voordeel, je hoeft geen licentie te kopen voor visual studio.
Het is te zien wat je er allemaal mee wil doen, bij .NET krijg je veel meer functies ter beschikking maar als je alles ook met vba kan doen waarom dan overstappen?
Indien je vooral sql servers aanspreekt met veel data zou ik wel gaan naar .NET. Access als frontend trekt alles binnen in zijn Jet engine en heb hier geen goede ervaringen mee.^Ěld♂
no votes

