Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1576to1580
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro läuft unter Excel 2002, nicht unter 2016

Makro läuft unter Excel 2002, nicht unter 2016
04.09.2017 16:03:26
CarVogt
Hallo zusammen,
ich habe mir folgendes Makro aus diversen im Netz gefundenen Makros zusammengebastelt. Entschuldigt also die wahrscheinlich grausame Struktur sowie die fehlenden Kommentare.
Private Sub CommandButton3_Click()
Application.ScreenUpdating = False
If Range("N9") = "" Then
MsgBox ("Es muss eine Auftragsnummer eingegeben werden!")
Exit Sub
Else
End If
Sheets("Tabelle4").Copy
Cells.Select
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Sheets("Tabelle4").Select
Range("A29").Copy
Range("A1").Select
If Dir("C:\Winter 2017", vbDirectory) = "" Then
MkDir ("C:\Winter 2017")
Else
End If
ActiveWorkbook.SaveAs Filename:="C:\Winter 2017\" & Range("A29") & " - " & Date & ".xls"
Application.CutCopyMode = False
' Datei versenden
sAddress = Range("B1").Value
Dim Empfaenger As String
Dim Betreff As String
Empfaenger = sAddress
Betreff = "Winterauftrag " & Range("A29")
Application.Dialogs(xlDialogSendMail).Show Empfaenger, Betreff
Application.ScreenUpdating = True
End Sub
Das Makro läuft unter Excel 2002 durch (bis auf den Aufruf des Mail-Fensters da ich hier Thunderbird nutze). Ich wollte es nun auf dem Laptop unter Excel 2016 laufen lassen (hier ist auch Outlook vorhanden).
Leider bricht die Ausführung schon beim Start mit folgender Meldung ab:
Fehler beim Kompilieren: Projekt oder Bibliothek nicht gefunden.
Die Hilfe hat mich leider auch nicht weiter gebracht.
Hat jemand eine Idee?
Gruß
Carsten

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro läuft unter Excel 2002, nicht unter 2016
04.09.2017 16:33:23
Nepumuk
Hallo Carsten,
teste mal:
Option Explicit

Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
    ByVal DirPath As String) As Long

Private Sub CommandButton3_Click()
    Dim objOutlook As Object, objMail As Object
    Dim strPath As String
    If Not IsEmpty(Range("N9").Value) Then
        Application.ScreenUpdating = False
        Worksheets("Tabelle4").Copy
        Cells.Copy
        Cells(1, 1).PasteSpecial Paste:=xlPasteValues
        strPath = "H:\Winter 2017\"
        Call MakeSureDirectoryPathExists(strPath)
        strPath = strPath & Range("A29").Value & " - " & Date & ".xls"
        Call ActiveWorkbook.SaveAs(Filename:=strPath, FileFormat:=xlExcel8)
        Application.CutCopyMode = False
        Set objOutlook = CreateObject(Class:="Outlook.Application")
        Set objMail = objOutlook.CreateItem(0)
        With objMail
            .To = Range("B1").Value
            .Subject = "Winterauftrag " & Range("A29").Value
            Call .Attachments.Add(strPath)
            Call .Display 'nur anzeigen
            ' Call .Send 'sofort senden
        End With
        Set objMail = Nothing
        Set objOutlook = Nothing
    Else
        Call MsgBox("Es muss eine Auftragsnummer eingegeben werden!", vbExclamation, "Hinweis")
    End If
End Sub


Gruß
Nepumuk
Anzeige
AW: Makro läuft unter Excel 2002, nicht unter 2016
04.09.2017 16:53:25
CarVogt
Hallo Nepumuk,
mal wieder vielen Dank.
Gruß
Carsten

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige