Avatar billede tavlen Nybegynder
06. januar 2001 - 10:24 Der er 4 kommentarer og
1 løsning

sende email fra excel2000

jeg har opgraderet fra off97 til 2000 og min vb-form til at sende en mail fra et excel ark virker ikke længere. HJÆLP.
Den ser ud således og virkede fint under 97:

Sub Send_Msg()
Dim objOL As New Outlook.Application
Dim objMail As MailItem
Set objOL = New Outlook.Application
Set objMail = objOL.CreateItem(olMailItem)
With objMail
    .To = \"xx@xxx.dk\"
    .Subject = \"lønregnskab\"
    .Body = \"\" & _
        Format(Range(\"A1\").Value, \"$ #,###.#0\") & \"\"
    .Display
End With
Set objMail = Nothing
Set objOL = Nothing
End Sub
Avatar billede sjh Nybegynder
06. januar 2001 - 20:44 #1
Skal det være fra excel2000 kan du ikke bruge Winsock.

http://www.vbsquare.com/demos/sendmail-demo/
Avatar billede jennemaan Nybegynder
08. januar 2001 - 10:55 #2

Sub Send_Msg()
Dim objOL As object\'New Outlook.Application
Set objOL=Createobject(\"Outlook.Application\")

Dim objMail Object \'As MailItem

Set objMail = objOL.CreateItem(olMailItem)

With objMail
    .To = \"xx@xxx.dk\"
    .Subject = \"lønregnskab\"
    .Body = \"\" & _
        Format(Range(\"A1\").Value, \"$ #,###.#0\") & \"\"
    .Display
End With
Set objMail = Nothing
Set objOL = Nothing
End Sub

Dit problem er vel at du får en \"can\'t create activeX component\" eller noget i den stil?

Sagen er at din gamle workbook havde en \"reference\" til det gamle outlook-typelibrary. I denne reference står der et class-id (se i din windowsregistry), som refererer til det gamle typelibrary som ikke findes på din maskine længere.

Du kan enten gøre som i ovenstående kode (late-binding), dvs. at du med Createobject-funktionen først laver et opslag i registry for at finde et class-id der passer til \"Outlook.Application\", eller du kan bruge din eksisterende kode, hvor du vælger references, fjerner den gamle reference, markerer den nye reference og gemmer workbook\'en (early-binding).

Jeg ville nok anbefale første alternativ (late binding) da din applikation så vil fungere både under off 97 og off 2000.

/Jennemaan
Avatar billede jennemaan Nybegynder
06. marts 2001 - 10:00 #3
Hvad var der galt med svaret...?

/Jennemaan
Avatar billede tavlen Nybegynder
06. marts 2001 - 10:18 #4
Jeg kunne ikke rigtig \"lure\" din forklaring og fik det til at virke med nedenstående
TAK anyway og undskyld jeg \"glemte\" dig

Sub Send_Msg()
Dim objOL As New Outlook.Application
Dim objMail As MailItem
Set objOL = New Outlook.Application
Set objMail = objOL.CreateItem(olMailItem)
With objMail
    .To = \"xx@xxx.dk\"
    .Subject = \"lønregnskab\"
    .Body = \"\"
    .Display
End With
Set objMail = Nothing
Set objOL = Nothing
End Sub
Avatar billede tavlen Nybegynder
06. marts 2001 - 10:18 #5
afsluttet
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