Avatar billede jensbchr Nybegynder
23. marts 2012 - 19:40 Der er 4 kommentarer

Runtime error 13 - CreateItem(olMailItem)

Hej,
Denne kode har kørt fint i flere år med winxp og Access 2007, men efter en opgradering til Win7 og Access 2010 fungerer den ikke mere.
Den giver en fejl på linien med CreateItem(olMailItem)

Her er koden:
    Dim BestilMod, Dato, Tempfil As String
    Dim objMailItem As Outlook.MailItem

    BestilMod = Me![FMU_Bestilling_personer]![Email]
    Dato = Me![Bestillingsdato]
    If Not BestilMod = vbNull Then
        If Not Dato = vbNull Then
            MsgBox ("Bestilling er afsendt")
        Else
            Me![Bestillingsdato] = Date
            DoCmd.RunCommand acCmdSaveRecord
            Me![FMU_Bestillingslinier].Requery
            Tempfil = "C:\NN_SAG_NY\bestilling.rtf"
            DoCmd.OutputTo acReport, "RP_Bestilling",  acFormatRTF, Tempfil, False
            Set olkApp = New Outlook.Application
            Set olkNameSpace = olkApp.GetNamespace("MAPI")
            Set objMailItem = olkApp.CreateItem(olMailItem)
            With objMailItem
                .To = BestilMod
                .Recipients.ResolveAll
                .Subject = "Bestilling til job 1746." & [Jobnummer]
                .Attachments.Add Tempfil
                .Send
            End With
            Set objMailItem = Nothing
            Set olkNameSpace = Nothing
            Set objMailItem = Nothing
            Kill Tempfil
        End If
    Else
        MsgBox ("Der mangler en email adresse")
    End If
End Sub

Jeg har ændret reference til Outlook 14.0.
Er der nogen som har et bud på hvordan jeg kan løse denne?
Avatar billede hugopedersen Nybegynder
24. marts 2012 - 08:21 #1
Denne her funktion kører på windows 7 64bit og Office 2010
Den må du lige checke igennem og se hvad forskellen evt. kan være.

Public Function fhpOutlookSendFile(aReceipiant As String, aFileName As String, aMessage As String, aSubject As String, Optional aShow As Boolean = True) As Integer
' -----------------------------------------------------------------------------------
' Purpose    : Sender fil til valgte modtagere
' Parameters :
' Returns    : Integer
' Created    : 10-03-2011
' Modified  :
' Remarks    :
' -----------------------------------------------------------------------------------
On Error GoTo Error_fhpOutlookSendFile
  Dim olApp As Outlook.Application
  Dim objOL As Object
  Dim olMail As MailItem
  Dim CurrFile As String

  If aReceipiant = "" Then
    GoTo Exit_fhpOutlookSendFile
  End If
 
  Set objOL = CreateObject("Outlook.Application")
  Set olApp = New Outlook.Application
  Set olMail = olApp.CreateItem(olMailItem)
 
  With olMail
    .To = aReceipiant
    .Subject = aSubject
    .Body = aMessage
    If aFileName <> "" Then
      .Attachments.Add aFileName
    End If
    If aShow = True Then
      .Display
    Else
      .Send
    End If
  End With

  Set olMail = Nothing
  Set olApp = Nothing
  Set objOL = Nothing
 
Exit_fhpOutlookSendFile:
  Exit Function

Error_fhpOutlookSendFile:
  fhpOutlookSendFile = -32768
  Select Case Err.Number
    Case 3021
    Case 2501
    Case Is < 0
    Case Else
      MsgBox Err.Number & ": " & Err.Description, vbOKOnly + vbCritical, "Error in procedure 'fhpOutlookSendFile'"
      fhpError_Display "modOutlook", "fhpOutlookSendFile"
  End Select
  Resume Exit_fhpOutlookSendFile

End Function
Avatar billede jensbchr Nybegynder
28. marts 2012 - 15:27 #2
Jeg har prøvet lidt af denne kode af i stedet.
Jeg kan se den bruger late binding.

Nu får jeg i stedet en Error 429 ActiveX componetn can't create object. På linien
Set objOL = CreateObject("Outlook.Application")
Avatar billede hugopedersen Nybegynder
28. marts 2012 - 17:09 #3
Ja det har jeg så ikke lige et bud på.
Kan det være en reference der mangler?
Avatar billede MSchlamovitz Mester
06. maj 2013 - 11:21 #4
I hugopedersens forslag synes objOL overflødig - eller tager jeg fejl?

Har du reference til Outlook ?

Runtime 13 plejer at være 'type mismatch' - dvs. der er forkerte værdier i dine variabler. Hvis du øverst i dit modul tilføjer en linje: Option Explicit og compilerer, hvad sker der så?
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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