288 Aufrufe
Gefragt in Tabellenkalkulation von peters Mitglied (460 Punkte)

Moin!

Ich arbeite mit Excel 2010 und das bisher auf einem Windows-7-Rechner. Alles gut soweit!

Nun habe ich Windows 10 installiert und nun funktionieren einige Excel-VBAs nicht mehr, so z.B. der folgende:

Sub Auftragsbestätigung_per_EMail()
   

  Application.ScreenUpdating = False
    
   If ThisWorkbook.Path = "" Then
        
        MsgBox "Erst die Datei speichern, dann kann die" & Chr(10) & Chr(10) & "Auftragsbestätigung per E-Mail versendet werden!", 16, "© 2019 by Andreas Eichenberg"
    
    ElseIf Worksheets("Eingabe").Cells(4, 15) = "" Or Worksheets("Eingabe").Cells(4, 15) = "Nummer?" Then
        
        MsgBox "Es wurde noch keine Angebots-Nr. vergeben!" & Chr(10) & Chr(10) & "Bitte nachholen ...!?", 16, "© 2019 by Andreas Eichenberg"
    
    Else
    
    
    
' SET Outlook APPLICATION OBJECT.
    Dim objOutlook As Object
    Dim objEmail As Object
    Dim myAttachments As Object
    
'Datei für PDF definieren
    Dim DateiNameAB As String
    DateiNameAB = ActiveWorkbook.Path & "\" & Left(ActiveWorkbook.Name, InStrRev(ActiveWorkbook.Name, ".") - 1) & " - Auftragsbestätigung.pdf"

'Angebotsblatt in PDF exportieren
Worksheets("Auftragsbestätigung").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        DateiNameAB, _
        Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
        :=False, OpenAfterPublish:=False


'Variabeln setzen (füllen)
    Set objOutlook = CreateObject("Outlook.Application")
    Set objEmail = objOutlook.CreateItem(0)
    Set myAttachments = objEmail.Attachments
    
    'SET Attachment

    
    
    ' CREATE EMAIL OBJECT.

    With objEmail
        .To = Worksheets("Eingabe").Cells(8, 22)
        .Subject = "Auftragsbestätigung " & Worksheets("Auftragsbestätigung").Cells(3, 12)
        .Body = Worksheets("Auftragsbestätigung").Cells(9, 2) & Chr(10) & Chr(10) & Worksheets("Auftragsbestätigung").Cells(1, 20) & Chr(10) & Chr(10)
        .GetInspector
        .Display
        .Attachments.Add DateiNameAB
'        .Send
    End With
    
    ' CLEAR.
    Set objEmail = Nothing:    Set objOutlook = Nothing:   Set myAttachments = Nothing:
    
End If

  Application.ScreenUpdating = True
    

    
End Sub

Der bleibt dann an Zeile

        .To = Worksheets("Eingabe").Cells(8, 22)

hängen (markiert sie beim Debuggen gelb) und ich bekomme dann folgende Fehlermeldung:

Hat jemand eine Idee, was am Code ich anpassen muss, damit das auch unter Windows 10 läuft (und weiterhin unter Windows 7)?

Grüße

Peter

3 Antworten

+1 Punkt
Beantwortet von m-o Profi (22.7k Punkte)

Hallo Peter,

probiere mal die folgende Version:
 .To = Worksheets("Eingabe").Cells(8, 22).Text

Gruß

M.O.

0 Punkte
Beantwortet von peters Mitglied (460 Punkte)

Hallo MO,

wie geil ist das denn...?! laugh

Funzt einwandfrei! Super! Danke!

Das liegt einfach an Windoof 10?! Gibt es noch mehr "Bugs", die durch Windoof 10 in VBA auftauchen?

Grüße

Peter

0 Punkte
Beantwortet von m-o Profi (22.7k Punkte)
Hallo Peter,

mir sind bei meinen Makros beim Umstieg von Windows 7 auf Windows 10 keine größeren Probleme aufgefallen.

Gruß

M.O.
...