Avatar billede tarzan30 Nybegynder
31. december 2008 - 13:07 Der er 8 kommentarer og
1 løsning

Send mail fra Excel UDEN worksheet eller anden data

Jeg har soegt en del paa info om mulighederne for at sende mails direkte fra Excel via macros. Mit oenske er at sende en mail, men uden vedhaeftet dokumentation. Er der nogen der ved om dette er muligt?
Avatar billede falster Ekspert
01. januar 2009 - 15:14 #1
Her er et - lidt tilrettet - eksempel. Jeg regner med, at du kan se sammenhængen mellem de engelske kommentarer og mine dummy-tekster, som du selv kan tilrette. Bemærk de bortkommenterede vedhæftningsmetoder.

Dette gemmer du i en tekstfil som et modul. Kald den f.eks. mail.bas:

Public Sub OutlookEMail()
Dim ol As New Outlook.Application
  Dim ns As Outlook.NameSpace
  Dim newMail As
 
  'Return a reference to the MAPI layer
  Set ns = ol.GetNamespace("MAPI")

  'Create a new mail message item
  Set newMail = ol.CreateItem(olMailItem)
  With newMail
      'Add the subject of the mail message
      .Subject = "Et eller andet emne"
      'Create some body text
      .Body = "En eller anden meddelelsestekst"

      'Add a recipient and test to make sure that the
      'address is valid using the Resolve method
                              'change this to your address
With .Recipients.Add("enelleranden@domæne.dk")
          .Type = olTo
          If Not .Resolve Then
              MsgBox "Ukendt addresse.", vbInformation
              Exit Sub
          End If
      End With

      'Attach a file as a link with an icon
'                        With .Attachments.Add _
'                            ("C:\Temp\Test.xls", olByReference)
'                            .DisplayName = "Training info"
'                        End With

      'Send the mail message
      newMail.Display
         
  End With

  'Release memory
  Set ol = Nothing
  Set ns = Nothing
  Set newMail = Nothing

End Sub

Du tilføjer modulet til dit Excelark. Opretter f.eks. en form med en knap med følgende procedure:

Private Sub CommandButton_Click()
OutlookEMail
Luk
End Sub

Så dannes din mail klar til afsendelse.

For nærmere om objektet, Properties, Methods og Events:

http://msdn.microsoft.com/en-us/library/aa210946(office.11).aspx
Avatar billede tarzan30 Nybegynder
13. januar 2009 - 13:39 #2
Hej Falster,

tak for dit svar. Jeg har forgaeves forsoegt at faa macroen til at virke men den fejler allerede pga. foerste linie. Jeg har blot kopieret teksten til en commandButton_click men som sagt, det virker ikke. :o(

vh Tarzan

ps: har du erfaring med at opdatere regneark, der er beskyttet med password, via en macro. Lige nu er jeg noedt til at indtaste password mens makroen koerer, men kunne jeg i stedet indtaste password direkte i macroen?
Avatar billede supertekst Ekspert
13. januar 2009 - 14:01 #3
måske: Er der sat en reference til Outlook i xls.filens VBA (Tools / References / Microsoft Outlook)?
Avatar billede tarzan30 Nybegynder
13. januar 2009 - 14:33 #4
Hej supertekst,

tak for hurtigt svar. Det er formentligt problemet. Nu er jeg baade ny med macro og arbejder i en tysk excel version. Venligst specificer hvor jeg finder Tools i VBA'en. vh Tarzan
Avatar billede supertekst Ekspert
13. januar 2009 - 15:18 #5
Skift til VBA-vinduet via Alt+F11 - MenuLinien ("højre flanke"): Tools - AddIns - Window - Help

Referencerne er i Alfabetisk orden : Microsoft Outlook xx.
Avatar billede tarzan30 Nybegynder
13. januar 2009 - 17:59 #6
Jeg kan simpelthen ikke finde den reference til Outlook. Er der ikke en forklaring som kan goere det forstaaligt for et totalt haabloest tilfaelde... :o)
Avatar billede supertekst Ekspert
13. januar 2009 - 18:06 #7
Obs.: hvilken version Excel anvender du?
Hvis 2003 eller ældre - send en mail til: pb(a)supertekst-it.dk
så sender jeg en "illustration"
Avatar billede supertekst Ekspert
14. januar 2009 - 14:15 #8
Konklusion:
Reference til OutLook blev sat / type blev tilskrevet til: Dim newMail As Object
Du får et svar- så kan du få afsluttet...
Avatar billede tarzan30 Nybegynder
14. januar 2009 - 14:30 #9
stor tak til supertekst og falster herfra!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester