A VBA-s e-mailküldés valószínűleg az egyik legismertebb és leggyakrabban használt makró napjaink irodai hétköznapjaiban, de ahogy más hasonló esetekben lenni szokott, ha nem is ilyen széleskörű lehetőségekkel és valódi automatizmusként, de az Excel beépített formuláival is felépíthetünk valamit, ami részben ilyesmit képes mutatni nekünk - hangsúlyozom, a kettő nem összehasonlítható, de a következő formulás trükközés azért a maga módján igencsak előremutató.
A HYPERLINK függvény a lelke a következő kis posztnak, amely alapesetben a következőt tudja:
Ahogy látható, első paraméterként megadjuk azt az internetes címet, elérési utat, ahova szeretnénk irányítani felhasználónkat, a második paraméterként pedig megadjuk azt a szöveget, ami a cellánkban fog majd szerepelni.
Ezt e-mail címmel is tudjuk használni, ilyenkor az első paraméternél a mailto: tag után beadjuk az érintett e-mailcímet, majd itt is adunk egy rövidebb, egyszerűbb nevet:
Értelemszerűen pontosvessző használatával több címet is meg tudunk adni, majd ha a linkre kattintunk, akkor az alapértelmezett levélküldőnkben meg fog nyílni egy új levél:
Azért a korlátok azok korlátok, webalapú levélküldőknél nem fog működni a dolog.
Fokozhatjuk a dolgot tovább, az első paraméterben a mailto: tag és az e-mail cím(ek) megadása után egy ?subject= utasítással tárgyat is tudunk adni az e-mailünknek, valahogy így:
Sőt, még a levél szövegét is megírhatjuk, ha ez előbb megadott címzett(ek) és tárgy után egy &body= taget rakunk a HYPERLINK első paraméterébe, majd beírjuk, amit akarunk:
Láthatjuk, hogy ez így elég nyers és formázatlan kis anyag, de szépen meg is tudjuk törni a szövegünket, ahogy szeretnénk, méghozzá úgy, hogy pl. a sortöréseknél egy %0A kódot illesztünk a szövegbe:
Ezeket a kódokat persze nem kell fejből megtanulnunk, ebben van segítségünkre ugyanis az ENCODEURL névre hallgató formula, ami annyit tesz, hogy egy beadott, tört szöveget megfelelően enkódol (minden nem alfanumerikus karaktert kódolni kell). Azaz szépen fel tudunk építeni egy kis táblát bizonyos mértékig automatikus levélküldésre (vagy inkább generálásra), hiszen a címzett, tárgy és szöveg mezőket kitöltetjük a felhasználóval, a szöveget egy ENCODEURL függvénnyel átalakítjuk, majd az egészet összefűzzük és végül egy linkre kattintva már meg is generálódik a levél:
Túlságosan persze ne örüljünk, ez csak rendkívül egyszerű levelekre és alapfeladatokra működhet, hiszen a HYPERLINK első paramétere maximum 255 karakter hosszú lehet, tehát igazán komplex történetekre nem felhasználható a fenti bűvészkedés.