Excel-ohjelmointi.fi

Etusivu Hinnoittelu
Soita: 050 337 9941


Excelin kaavat vai Visual Basic -ohjelmakoodi tarjouksen laskentaan?


Usein kysytään: Milloin on järkevää kaavojen sijasta käyttää VBA-ohjelmakoodia? Mikä ero näillä kahdella vaihtoehdolla on?

Asian tarkastelemiseksi on seuraavassa hyvin pelkistetty esimerkki tarjouslaskurista. Kyseessä on kuitenkin jo tilanne missä ei enää kannata edes yrittää toteuttaa asiaa pelkästään kaavojen avulla vaan VBA-ohjelmakoodin käyttö on parempi vaihtoehto.


Esimerkki:

Yrityksessä halutaan tehdä tarjouksia asiakkaan toivomien tuotteiden mukaisesti. Tuotteiden nimet ja hinnat ovat Excel-taulukossa alla olevan kuvan mukaisesti:
Tuotteiden hinnat

Tuote valitaan tarjoukseen mukaan tuplaklikkaamalla sen riviä taulukossa jolloin rivin taustaväri muuttuu harmaaksi. Oikealla puolella olevaan sarakkeeseen lisätään tarjoukseen haluttu kappalemäärä. Tuplaklikkaamalla harmaana olevaa riviä, muuttuu taustaväri takaisin normaaliksi ja mahdollinen kappalemäärä häviää sarakkeesta D. Tämä rivin valinta ja värin vaihtaminen on toteutettu VBA-koodin avulla.



(Esimerkissä on valittu mukaan myös tuote numero 60, joka sijaitsee taulukossa alempana)

Kun halutut valinnat on tehty, klikataan ylhäällä olevaa painiketta 'Laadi tarjous'. Tällöin käynnistyy VBA-ohjelmakoodi, joka rakentaa tehtyjen valintojen mukaisesti toiselle taulukkosivulle alla olevan kuvan mukaisen tarjouksen:
Tarjous VBA-ohjelman laatimana
Nyt esimerkiksi solussa E13 oleva lukuarvo syntyy kaavalla '=C13*D13', jonka VBA-ohjelmakoodi kirjoitti kyseiseen soluun.

Solussa E14 oleva luku syntyy kaavalla '=SUM(E11:E13)' ja tämä kirjoitettiin myös VBA-ohjelmakoodin toimesta.

Tässä yhteissumma tuli riville 14. Koska tuotteita voidaan valita hintataulukosta mielivaltainen määrä, vaihtelee eri tarjouksissa se rivi, jolle yhteissumma lopulta tulee.

Edelleen, yhteissumman jälkeen voitaisiin jatkaa muiden tietojen kirjoittamista pari riviä alempaa. Tässä esimerkissä riviltä 16, jossain toisessa tarjouksessa jossa on kuusi tuotetta mukana riviltä 19, jne.

Yhteissumman sisältävän solun (yllä solu E14) muotoilu saadaan myös osumaan oikeaan soluun VBA-ohjelmakoodin avulla helposti.

Tarjouksen tulostaminen voidaan myös antaa VBA-ohjelmakoodin toteutettavaksi saman tien. Tällöin sekä ylä- että alatunnisteet saadaan mukaan automaattisesti ohjelmakoodin toimesta:
Tarjoustuloste VBA-ohjelman tuottamana



Tällainen tapaus jossa tulosrivien lukumäärä vaihtelee eri kerroilla ja halutaan hallita tulostaulukon tai tulossivun ulkoasua siten, että se pysyy aina siistinä, on hyvin hankala toteuttaa onnistuneesti pelkästään kaavoja käyttäen.

VBA-ohjelmakoodin avulla tällaisen tilanteen hoitaminen on osaavalle ohjelmoijalle helppo tehtävä. Lisäksi ohjelmakoodia on myöhemmin myös helppo muuttaa ja / tai täydentää. Esimerkiksi haluttaessa tehdä eri asiakkaille oma räätälöity tarjoustuloste, voidaan ohjelmaan lisätä mahdollisuus valita mikä asiakas on kyseessä ja lopullinen tarjouksen sisältö ja ulkoasu määräytyy tehdyn valinnan mukaan.

Jos VBA-ohjelmakoodin hyödyntäminen Excelin yhteydessä on ennestään tuntematon asia, niin käsityksesi Excelin tarjoamista mahdollisuuksista on hyvin rajoittunut! Lue täältä lisää, miten ns. makrojen käyttö antaa Excel-ohjelmallesi aivan uusia ulottuvuuksia.


Näin pääset hyödyntämään VBA-ohjelmoinnilla toteutettuja ratkaisuja

Jos jokin edellä kuvatun kaltainen tilanne olisi omalle yrityksellesi hyödyksi niin seuraavaksi pääset nopeimmin eteenpäin siten, että esimerkiksi soitat numeroon 050 337 9941.

Keskustellaan tilanteestasi ja miltä se näyttää. Tällöin pääset hyödyntämään välittömästi kokeneen ammattilaisen apua. Sinun ei tarvitse kuluttaa enempää aikaa pähkäilemällä yksin asiaa ''seisovassa vedessä''.

En veloita keskusteluun käytetystä ajasta ja voit myös luottaa siihen, että tässä ei ole tarkoitus huijata sinua kuuntelemaan "myyntiesittelyä". Sellaisen pitäminen ei olisi edes järkevää koska en tunne asiaasi ja tilannettasi. Niiden perusteellinen selvittäminen olisi sitten jo ihan toinen tilaisuus joka sovittaisiin erikseen jos niin halutaan.

Tässä puhelinpalaverissa saat tilaisuuden nopeasti selvittää, olisiko asiassasi mahdollista päästä järkevään ratkaisuun joka olisi myös taloudellisesti kannattavaa yritystoimintaasi ajatellen. Kaikki mikä on mahdollista ei tietenkään ole aina välttämättä taloudellisesti kannattavaa kun asiaa tarkastellaan yrityksen liiketoiminnan näkökulmasta. Asia on selvitettävä aina tapauskohtaisesti.


Ole hyvä ja soita 050 337 9941 ja kysy lisää!