Så här automatiserar du Outlook med hjälp av Visual Basic

Artikelöversättning Artikelöversättning
Artikel-id: 220595 - Visa produkter som artikeln gäller.
Visa alla | Dölj alla

På den här sidan

Sammanfattning

Denna artikel innehåller information om programmässig styrning av av Microsoft Outlook med hjälp av automatiseringsfunktioner i Visual Basic. I exemplet visas hur du skapar kontakter och avtalade tider, och hur du skickar meddelanden med hjälp av objektmodellen i Microsoft Outlook.

Mer Information

Skapa och kör exemplet genom att följa instruktionerna nedan. För körning av exemplet krävs en tidigt bunden referens till ett Microsoft Outlook-typbibliotek. Följande tabell innehåller filnamn på typbibliotek för olika versioner av Microsoft Outlook:
Dölj tabellenVisa tabellen
Outlook-versionSå visas typbiblioteket i referenslistanFilnamn
Outlook 97"Objektbibliotek för Microsoft Outlook 8.0"msoutl8.olb
msoutl8.olb"Objektbibliotek för Microsoft Outlook 98"msoutl85.olb
Outlook 2000"Objektbibliotek för Microsoft Outlook 9.0"msoutl9.olb
Outlook 2002"Objektbibliotek för Microsoft Outlook 10.0"msoutl.olb
Office Outlook 2003"Objektbibliotek för Microsoft Outlook 11.0"msoutl.olb

Skapa automatiseringsexemplet

  1. Starta Visual Basic och skapa ett nytt Standard-EXE-projekt.
  2. Välj ReferenserProjekt-menyn och markera Microsoft Outlook.
  3. Lägg till en knapp i formuläret.
  4. Dubbelklicka på knappen och lägg till följande kod:
     ' Starta Outlook.
     ' Om det redan körs ska du använda samma instans ...
       Dim olApp As Outlook.Application
       Set olApp = CreateObject("Outlook.Application")
        
     ' Inloggning. Det är enklare om du redan kör programmet och är inloggad ...
       Dim olNs As Outlook.NameSpace
       Set olNs = olApp.GetNamespace("MAPI")
       olNs.Logon
    
     ' Skapa och öppna en ny kontakt.
       Dim olItem As Outlook.ContactItem
       Set olItem = olApp.CreateItem(olContactItem)
    
     ' Konfigurera kontaktinformation...
       With olItem
          .FullName = "Johan Andersson"
          .Birthday = "1975-09-15"
          .CompanyName = "Microsoft"
          .HomeTelephoneNumber = "+46 123 456 789"
          .Email1Address = "någon@microsoft.com"
          .JobTitle = "Utvecklare"
          .HomeAddress = "Storgatan 1 "Storstad, 123 45 Sverige"
       End With
       
     ' Spara kontakt ...
       olItem.Save
        
     ' Avtala en ny tid.
       Dim olAppt As Outlook.AppointmentItem
       Set olAppt = olApp.CreateItem(olAppointmentItem)
        
     ' Ange starttid till 2 minuter senare ...
       olAppt.Start = Now() + (2# / 24# / 60#)
        
     ' Ange annan information för den avtalade tiden ...
       With olAppt
          .Duration = 60
          .Subject = "Möte om planerna ..."
          .Body = "Möte med " & olItem.FullName & " för att diskutera planerna."
          .Location = "Hemkontor"
          .ReminderMinutesBeforeStart = 1
          .ReminderSet = True
       End With
        
     ' Spara avtalad tid ...
       olAppt.Save
        
     ' Skicka ett meddelande till den nya kontakten.
       Dim olMail As Outlook.MailItem
       Set olMail = olApp.CreateItem(olMailItem)
     ' Fyll i och skicka meddelandet ...
       olMail.To = olItem.Email1Address
       olMail.Subject = "Om mötet ..."
       olMail.Body = _
            "Kära " & olItem.FirstName & ", " & vbCr & vbCr & vbTab & _
            "Vi ses om två minuter för mötet!" & vbCr & vbCr & _
            "Jag har lagt till dig i min kontaktlista."
       olMail.Send
        
     ' Rensa ...
       MsgBox "Allt klart ...", vbMsgBoxSetForeground
       olNS.Logoff
       Set olNs = Nothing
       Set olMail = Nothing
       Set olAppt = Nothing
       Set olItem = Nothing
       Set olApp = Nothing
    						
  5. Kör projektet och klicka på knappen för att köra koden.
När koden körs får du en ny kontakt med namnet "Johan Andersson", en avtalad tid är schemalagd om två minuter med en påminnelse som visas om en minut och ett meddelande har skickats till någon@microsoft.com. Eftersom du lade till en födelsedag för kontakten (15/9), har en återkommande händelse dessutom lagts till i Outlook-kalendern så att du påminns om dagen.

I Outlook 2002 finns två nya dialogrutor: En med en varning om att ett program försöker komma åt e-postadresser som är lagrade i Outlook och med en fråga om du vill tillåta detta, samt ett meddelande om att programmet försöker skicka e-post. Med denna funktion skyddas datorn mot att virus skickar e-post från den utan att du vet om det.

Om du vill veta mer klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
290500 Beskrivning av säkerhetsfunktioner för e-post för utvecklare i Outlook 2002 (Länken kan leda till en webbplats som är helt eller delvis på engelska)

Referenser

Om du vill veta mer om programmeringsresurser för Outlook klickar du på följande artikelnummer och läser artiklarna i Microsoft Knowledge Base:
166368 Resurser för anpassade formulär och programmering i Outlook 97 (Länken kan leda till en webbplats som är helt eller delvis på engelska)
180826 Resurser för anpassade formulär och programmering i Outlook 98 (Länken kan leda till en webbplats som är helt eller delvis på engelska)
271225 Resurser för anpassade formulär och programmering i Outlook 2000 (Länken kan leda till en webbplats som är helt eller delvis på engelska)
287531 Resurslista för anpassade formulär och programmering i Outlook 2002 (Länken kan leda till en webbplats som är helt eller delvis på engelska)
313802 Så här hämtar du kontakter med Outlook-objektmodellen i Visual Basic .NET (Länken kan leda till en webbplats som är helt eller delvis på engelska)
313788 Så här skapar du avtalade tider med Outlook-objektmodellen i Microsoft Visual Basic .NET (Länken kan leda till en webbplats som är helt eller delvis på engelska)

Egenskaper

Artikel-id: 220595 - Senaste granskning: den 2 februari 2006 - Revision: 9.0
Informationen i denna artikel gäller:
  • Microsoft Visual Basic 6.0 Enterprise Edition
  • Microsoft Visual Basic 5.0 Learning Edition
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Office Outlook 2003
  • Microsoft Outlook 2002 Standard Edition
  • Microsoft Outlook 2000 Standard Edition
  • Microsoft Outlook 97 Standard Edition
  • Microsoft Outlook 98 Standard Edition
Nyckelord: 
kbautomation kbhowto kboutlookobj KB220595

Ge feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com