• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

VBA: Automatisch bericht versturen na opslaan van Excel bestand

Status
Niet open voor verdere reacties.

Flash9

Gebruiker
Lid geworden
19 dec 2010
Berichten
11
Beste,

De volgende situatie wil ik graag geprogrammeerd hebben via VBA: Dat een persoon een bepaald Excel bestand opslaat en dat vervolgens de inhoud van de sheet na het opslaan automatisch wordt verzonden naar een bepaald email adres. Ik heb al voor elkaar gekregen (met onderstaande Macro) dat een email verzonden kan worden naar een bepaald adres. Alleen het deel dat dit automatisch een mail met de inhoud van de sheet wordt verzonden na het opslaan ontbreekt nog. Weet iemand hoe dit moet?

Bij voorbaat dank!

Groeten,

Just



Huidige Macro:


Sub Send_Selection_Or_ActiveSheet_with_MailEnvelope()

Dim Sendrng As Range

On Error GoTo StopMacro

With Application
.ScreenUpdating = False
.EnableEvents = False
End With

Set Sendrng = Selection

With Sendrng

ActiveWorkbook.EnvelopeVisible = True
With .Parent.MailEnvelope


.Introduction = "UPDATE"

With .Item
.To = "emailadres"
.CC = ""
.BCC = ""
.Subject = "See following slide"
.Send
End With

End With
End With

StopMacro:
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
ActiveWorkbook.EnvelopeVisible = False

End Sub
 
Zet de code in Thisworkbook tussen onderstaande twee lijnen.
Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)


End Sub
Om het bestand mee te zenden:
Code:
.attachments.add thisworkbook.fullname
 
Zet de code in Thisworkbook tussen onderstaande twee lijnen.
Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)


End Sub
Om het bestand mee te zenden:
Code:
.attachments.add thisworkbook.fullname


Beste Harry,

Ik heb de code zoals jij aangaf tussen "Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)" en End Sub echter krijg ik het volgende: "Compile Error, expected End sub"
Ik heb onderstaand de code bijgevoegd. Ik vroeg mij overigens ook af. Kan het automatisch versturen ook gebeuren zonder dat het VBA scherm wordt geopend? Dat degene die het opslaat, gewoon opslaat zonder dat er een scherm oppopt?

Bij voorbaat dank!!

Mvg, Just


Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

Sub Send_Selection_Or_ActiveSheet_with_MailEnvelope()


Dim Sendrng As Range

On Error GoTo StopMacro

With Application
.ScreenUpdating = False
.EnableEvents = False
End With


Set Sendrng = Selection


With Sendrng

ActiveWorkbook.EnvelopeVisible = True
With .Parent.MailEnvelope


.Introduction = "UPDATE"

With .Item
.To = "EMAIL"
.CC = ""
.BCC = ""
.Subject = "See following slide"
.Send
End With

End With
End With



StopMacro:
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
ActiveWorkbook.EnvelopeVisible = False

End Sub
 
Haal dit er sowieso uit.
Code:
Sub Send_Selection_Or_ActiveSheet_with_MailEnvelope()
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan