Beste,
Ik ben een absolute leek op het gebied van macro's en dringend op zoek naar VBA/macro code voor het opslaan, sluiten en per e-mail versturen van een Excel bestand. De situatie is als volgt:
De gebruiker vult een Excel formulier van 5 tabbladen in. Bovenaan het eerste tabblad (hoofdformulier) zijn 3 buttons te vinden: Opslaan, Sluiten en Insturen. Met de Opslaan button opent de Opslaan als box waarbij de bestandsnaam al vast staat en bestaat uit waarden van een 3-tal cellen in het formulier (eerste tabblad). Zo heeft de gebruiker wel de mogelijkheid om het bestand op zijn gewenste locatie op te slaan, maar staat de bestandsnaam dus al vast. De bestandsnaam is bijvoorbeeld zo: Formulier_Hotel (012345)_Klant (2012.03.20).xlsx. Het stukje Formulier is een gewoon stukje tekst. Hotel is een variabele en komt uit cel E10. De code daarna (tussen haakjes) is ook variabel en komt uit cel I8. Ook Klant is variabel en komt uit cel E12. Daarachter komt tussen haakjes de huidige datum te staan, automatisch gegenereerd en exact in de typering jjjj.mm.dd. De extensie waarin het formulier moet worden opgeslagen is .xlsx. Als een van de cellen geen waarde heeft, dan dient er een foutmelding te verschijnen waarin de gebruiker erop wordt gewezen eerst alle informatie in te voeren.
Met de button Sluiten sluit je het formulier. Als het formulier nog niet is opgeslagen, dan verschijnt de Opslaan als box, hetzelfde als hierboven vermeld, en wordt na opslaan het bestand gesloten.
Met de Insturen button wordt een nieuw op te stellen e-mailbericht geopend, met het formulier (in de bestandsnaam als hierboven beschreven) in de bijlage. De onderwerpregel staat vast, met variabelen uit het formulier: Hotel - 012345 - Klant. Hotel is de variabele uit cel E10, de code 012345 de variabele uit cel I8 en Klant de variabele uit cel E12. Als tekst krijgt de e-mail ook een vast indeling met variabelen uit het formulier, bijvoorbeeld:
Formulier
Hotel name: [variabele uit cel E10]
Hotel ID: [variabele uit cel I8]
Rate name: [variabele uit cel E12]
Rate code: [variabale uit cel E14]
Comments:
[ruimte voor opmerkingen]
De gebruiker dient alleen zelf nog op Verzenden te klikken. Deze stap wil ik aan de gebruiker over laten om hem nog de ruimte te geven voor eventuele opmerkingen en een extra bijlage mee te verzenden. Als de gebruiker het formulier nog niet heeft opgeslagen, dan krijgt hij bij het klikken op Versturen een melding als "Eerst opslaan!".
Hopelijk kan iemand mij helpen!
Alvast veel dank!
Gr,
Thomas
Ik ben een absolute leek op het gebied van macro's en dringend op zoek naar VBA/macro code voor het opslaan, sluiten en per e-mail versturen van een Excel bestand. De situatie is als volgt:
De gebruiker vult een Excel formulier van 5 tabbladen in. Bovenaan het eerste tabblad (hoofdformulier) zijn 3 buttons te vinden: Opslaan, Sluiten en Insturen. Met de Opslaan button opent de Opslaan als box waarbij de bestandsnaam al vast staat en bestaat uit waarden van een 3-tal cellen in het formulier (eerste tabblad). Zo heeft de gebruiker wel de mogelijkheid om het bestand op zijn gewenste locatie op te slaan, maar staat de bestandsnaam dus al vast. De bestandsnaam is bijvoorbeeld zo: Formulier_Hotel (012345)_Klant (2012.03.20).xlsx. Het stukje Formulier is een gewoon stukje tekst. Hotel is een variabele en komt uit cel E10. De code daarna (tussen haakjes) is ook variabel en komt uit cel I8. Ook Klant is variabel en komt uit cel E12. Daarachter komt tussen haakjes de huidige datum te staan, automatisch gegenereerd en exact in de typering jjjj.mm.dd. De extensie waarin het formulier moet worden opgeslagen is .xlsx. Als een van de cellen geen waarde heeft, dan dient er een foutmelding te verschijnen waarin de gebruiker erop wordt gewezen eerst alle informatie in te voeren.
Met de button Sluiten sluit je het formulier. Als het formulier nog niet is opgeslagen, dan verschijnt de Opslaan als box, hetzelfde als hierboven vermeld, en wordt na opslaan het bestand gesloten.
Met de Insturen button wordt een nieuw op te stellen e-mailbericht geopend, met het formulier (in de bestandsnaam als hierboven beschreven) in de bijlage. De onderwerpregel staat vast, met variabelen uit het formulier: Hotel - 012345 - Klant. Hotel is de variabele uit cel E10, de code 012345 de variabele uit cel I8 en Klant de variabele uit cel E12. Als tekst krijgt de e-mail ook een vast indeling met variabelen uit het formulier, bijvoorbeeld:
Formulier
Hotel name: [variabele uit cel E10]
Hotel ID: [variabele uit cel I8]
Rate name: [variabele uit cel E12]
Rate code: [variabale uit cel E14]
Comments:
[ruimte voor opmerkingen]
De gebruiker dient alleen zelf nog op Verzenden te klikken. Deze stap wil ik aan de gebruiker over laten om hem nog de ruimte te geven voor eventuele opmerkingen en een extra bijlage mee te verzenden. Als de gebruiker het formulier nog niet heeft opgeslagen, dan krijgt hij bij het klikken op Versturen een melding als "Eerst opslaan!".
Hopelijk kan iemand mij helpen!
Alvast veel dank!
Gr,
Thomas