davylenders123
Gebruiker
- Lid geworden
- 20 jun 2010
- Berichten
- 902
Ik heb de volgende code in een macro staan die het bestandje mailt door op de button te klikken.
Deze haalt eerst het paswoord eraf en zet het voor het mailen er terug op.
Nu wil ik die macro gebruiken in een ander bestand waar geen wachtwoord op de tab bladen staat.
Maar het zou de tabbladen wel moeten vergrendelen met een wachtwoord als hij de mail verstuurd.
Wat moet ik dan aanpassen aan de macro ?
Hieronder even voor de duidelijkheid heel de macro die mailt.
Code:
ActiveSheet.Unprotect Password:="1230"
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = False
Range("A1").Select
ActiveSheet.Protect Password:="1230", DrawingObjects:=True, Contents:=True, Scenarios:=True
Nu wil ik die macro gebruiken in een ander bestand waar geen wachtwoord op de tab bladen staat.
Maar het zou de tabbladen wel moeten vergrendelen met een wachtwoord als hij de mail verstuurd.
Wat moet ik dan aanpassen aan de macro ?
Hieronder even voor de duidelijkheid heel de macro die mailt.
Code:
Const EMBED_ATTACHMENT As Long = 1454
Const vaCopyTo As Variant = "" 'copy mailen naar: "adres"
Sub mail()
Dim vaRecipients As Variant
Dim noSession As Object
Dim noDatabase As Object
Dim noDocument As Object
Dim noEmbedObject As Object
Dim noAttachment As Object
If vbNo = MsgBox("Ben je wel zeker dat je die mail wil verzenden", vbYesNo) Then Exit Sub
If vbNo = MsgBox("Heb je lotus notus open staan?", vbYesNo) Then Exit Sub
ActiveSheet.Unprotect Password:="1230"
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = False
Range("A1").Select
ActiveSheet.Protect Password:="1230", DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveWorkbook.SaveAs Filename:=("T:\Mag-Data\Aantal sorteerproces\Bestandjes al doorgemaild" & "\Managementbestand_TUR " & " Van " & Format(Now, "dd-mm-yyyy hh" & "u " & "mm") & ".xls")
stpath = "T:\Mag-Data\Aantal sorteerproces\Bestandjes al doorgemaild" 'locactie waar bijlage staat
stsubject = "Managementbestand_TUR " & Date & " .xls"
'& Sheets("Routes").Cells(2, 2).Value & " .xls" _
vamsg = "Anne, " & vbCrLf & vbCrLf & vbCrLf & vbCrLf & _
"Heb het bestandje klaar. " & vbCrLf & vbCrLf & vbCrLf & vbCrLf & _
"Je moet me gewoon nog even doorgeven wat er standaard in de mail moet komen op de plaats waar je dit nu leest. " & vbCrLf & vbCrLf & _
"En de mail adressen van de personen die dit bestandje moeten krijgen . " & vbCrLf & vbCrLf & _
"Dan hoef je enkel u lotus open te zetten en in het bestandje op de button doormailen klikken en de mail wordt gestuurd met het bestandje in bijlage . " & vbCrLf & vbCrLf & _
"Met Vriendelijke Groeten" & vbCrLf & vbCrLf & _
"Verantwoordelijke extra toeren "
'mailbody voorzien van gegevens
stfilename = "Bestandje om te mailen naar st niklaas .xls" 'Bestandsnaam
stattachment = ("T:\Mag-Data\Aantal sorteerproces\Bestandjes al doorgemaild" & "\Managementbestand_TUR " & " Van " & Format(Now, "dd-mm-yyyy hh" & "u " & "mm") & ".xls")
vaRecipients = VBA.Array("5875@fff.kk", "5245@fff.be", "5875@hotmail.com") 'mailadressen("eerste ontvanger" , "tweede ontvanger", enz.)
'Bepaal de Lotus Notes COM's Objecten.
Set noSession = CreateObject("Notes.NotesSession")
Set noDatabase = noSession.GETDATABASE("", "")
'Als Lotus Notes niet open is open dan het mail-gedeelte ervan.
If noDatabase.IsOpen = False Then noDatabase.OPENMAIL
'Maak de e-mail en de bijlage.
Set noDocument = noDatabase.CreateDocument
Set noAttachment = noDocument.CreateRichTextItem("stAttachment")
Set noEmbedObject = noAttachment.EmbedObject(EMBED_ATTACHMENT, "", stattachment)
'Voeg de gegevens toe aan de gemaakte e-mail eigenschappen.
With noDocument
.Form = "Memo"
.SendTo = vaRecipients
.CopyTo = vaCopyTo
.Subject = stsubject
.Body = vamsg
.SaveMessageOnSend = True
.PostedDate = Now()
.Send 0, vaRecipients
End With
'Verwijder objecten uit het geheugen.
Set noEmbedObject = Nothing
Set noAttachment = Nothing
Set noDocument = Nothing
Set noDatabase = Nothing
Set noSession = Nothing
MsgBox "De e - mail is correct verstuurd ", vbInformation
End Sub