• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Excel crash na verzenden mail met bijlage

  • Onderwerp starter Onderwerp starter JEC.
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

JEC.

Terugkerende gebruiker
Lid geworden
27 feb 2019
Berichten
4.605
Office versie
365
Excel crasht na het verzenden van een automatisch gegenereerde mail.
Het bestand gebruik ik nu bijna een half jaar zonder problemen, tot op de dag van vandaag.

Er wordt een PDF aangemaakt en vervolgens wordt deze verstuurd naar meerdere mensen.

Wanneer ik deze PDF als bijlage verstuur, crasht Excel. Wanneer ik die niet verstuur, crasht Excel niet.
Heeft iemand hier ervaring mee? Ik vind er heel weinig over.

Bedankt!

Code:
.Attachments.Add Filenaam
 
Ik wil wel testen of dat hier ook gebeurt.
Plaats je document eens.
 
Ik heb zojuist een testbestandje gemaakt met minder Emails en het werkt weer...
Misschien dat het met een bepaald geheugen te maken heeft.
 
Ik heb een document waarmee 's nachts middels Excel via de Windows Task Scheduler 38 PDF's worden gemaild, zonder enig probleem.
De hoeveelheid zou dus niet uit mogen maken.
 
Laatst bewerkt:
Lijkt mij ook niet. Het gekke is dat het altijd heeft gewerkt:confused:
 
Krijg je dan ook een foutmelding?
 
Nee ook niet. De pdf wordt gemaakt en de mail wordt ook aangemaakt.
Wanneer Outlook verschijnt, wordt Excel 2 seconden later afgesloten en weer opnieuw geopend met als voorstel het bestand te herstellen, zonder enige foutmelding.
 
Ok, ik gebruik er geen Outlook voor maar CDO, dus zal het ergens in de combinatie Excel en Outlook mis gaan.
Maar Outlook hoeft toch niet te verschijnen als je er vanuit Excel een mail mee verstuurd?
 
Nee dat gebeurt normaal gesproken ook niet. Nu bij het testen gebruik ik even .display om te zien wat er precies gebeurt.
 
Ik heb office 2010 geïnstalleerd, samen met office 365. Misschien dat daar ergens iets misgaat. Dat zal ik morgen even testen
 
Draai even een herstel van de Office installatie die je als standaard wilt gebruiken.
 
Als een ongeldig emailadres wordt gebruikt kan dat tot foutmeldingen leiden. Check de spelling.
 
Emailadressen kloppen allemaal. Vorige week had ik dit probleem nog niet.
 
Voor de plaatselijke voetbalvereniging hetzelfde gehad met meer dan 1000 mails.

Stuk voor stuk werden ze verzonden met hun eigen naam.
Code:
For i = 1 to ubound(sv)

Ik heb er om de 100 mails een wachttijd in moeten bouwen van 10 sec.
Code:
If i Mod 100 = 0 Then Application.Wait DateAdd("s", 10, Now)
 
In het verleden was het zo dat als je meer als 25 personen tegelijk mailt, de provider het als spam kan zien.
Dus opdelen zoals HSV.
 
In het verleden was het zo dat als je meer als 25 personen tegelijk mailt, de provider het als spam kan zien.
Dus opdelen zoals HSV.
Dat is wel lang geleden hoor. En beperkingen van je provider mogen je Excel niet laten crashen. Tenzij heel specifiek je provider een melding terugstuurt die je e-mailclient niet kan verwerken wat relateert aan Excel. Maar dat is ver gezocht.
 
Ik blijf nog even doorzoeken. Het gaat om 1 mail naar 16 personen. Zou echt geen probleem moeten zijn.
 
Als je de code niet plaatst die je gebruikt, blijft het gissen.
 
Ik verwacht niet dat je daar veel wijzer van wordt.

Code:
Sub mailstand()
If MsgBox("PDF maken en doorsturen?", vbYesNo, "Let op!") = vbYes Then
  With Sheets(1)
      Filenaam = "C:\Users\xx\xx\xx\xx\xx\" & "Tussenstand " & Date & ".pdf"
     .Range("A1:L47").ExportAsFixedFormat xlTypePDF, Filenaam, , , , 1, 1, False
  End With
  With CreateObject("Outlook.Application").CreateItem(0)
     .To = Join(Application.Transpose(Sheets("Emails").ListObjects("Emails").DataBodyRange), ";")
     .BCC = ""
     .Subject = ""
     .Body = ""
     .Attachments.Add Filenaam
     .Send
  End With
End If
End Sub
 
Suggesties:

- zonder overbodige argumenten:
Code:
  .Range("A1:L47").ExportAsFixedFormat 0, Filenaam

- alle emailadressen in 1 cel gescheiden door ;

Code:
.To = Sheets("Emails").cells(1)

- Verwijder .BCC

- geef .Subject een inhoud.

Check of de variabele 'Filenaam' niet interfereert (bijv. bladnaam, benoemd gebied, etc.)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan