Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1548to1552
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 wird im bestimmten Sheet nicht ausgeführt

Makro wird im bestimmten Sheet nicht ausgeführt
20.03.2017 06:13:57
Andi
Guten Morgen,
habe nun lange eine Ursachenforschung betrieben, wann genau beim Ausführen des Makros " Speichern in " die Fehlermeldung "1004 Wir haben nichts zum Drucken gefunden" auftritt.
Eigentlich nur wenn aus dem Sheet "Bearbeiten" das Makro ausgeführt wird.
Wird das Makro von Sheet "Drucken ,Hilfstabelle, oder gar von der Tabelle1" - um die es ja bei der Speicherung in XLSX und PDF geht- funktioniert alles wie es soll.
Allerdings ist es mir am Sinnvollsten, das Makro doch von "Sheet Bearbeiten" aus zu starten.
Wo könnte da der Fehler liegen?
Der Versuch mit "Sheets("Tabelle1").Select" brachte auch noch nicht die Lösung.

  • Option Explicit
    
    Public Sub Speichern_in_PDF_XLSX()
    Call Makro8
    Dim varPath As Variant
    On Error GoTo Fin
    varPath = Application.GetSaveAsFilename( _
    InitialFileName:="D:\Elektro Arbeit\", _
    FileFilter:="Excel(*.xlsx), *.xlsx", _
    Title:="Save as XLSX and PDF")
    If Not varPath = False Then
    If Dir(varPath)  "" Then
    Select Case MsgBox("Datei überschreiben?", 4 Or 32 Or 0, "Datei")
    Case vbYes
    With Application
    .ScreenUpdating = False
    .DisplayAlerts = False
    End With
    Sheets("Tabelle1").Copy
    With ActiveWorkbook
    .SaveAs varPath, 51
    .ExportAsFixedFormat Type:=xlTypePDF, Quality:=xlQualityStandard,  _
    IncludeDocProperties:=True, IgnorePrintAreas:=True
    .Close False
    End With
    End Select
    Else
    Sheets("Tabelle1").Copy
    With ActiveWorkbook
    .SaveAs varPath, 51
    .ExportAsFixedFormat Type:=xlTypePDF, Quality:=xlQualityStandard,  _
    IncludeDocProperties:=True, IgnorePrintAreas:=True
    .Close False
    End With
    End If
    Else
    MsgBox "Abgebrochen..."
    End If
    Fin:
    With Application
    .ScreenUpdating = True
    .DisplayAlerts = True
    End With
    If Err.Number  0 Then MsgBox "Fehler: " & _
    Err.Number & " " & Err.Description
    End Sub
    

  • Grüße Andi

    5
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Makro wird im bestimmten Sh. nicht ausgeführt
    20.03.2017 08:58:48
    firmus
    Hi Andi,
    ein select nutzt nichts, wenn Du nicht vorher auf das richtige workbook positioniert hast.
    Hier ein Beispiel in dem das klappt.
    https://www.herber.de/bbs/user/112291.xlsm
    1. workbook und worksheet, das später gedruckt werden soll, erst mal festhalten.
    2. restliches Makro laufen lassen.
    3. Position aus der Sicherung wieder holen "activate".
    4. Save und Create PDF sollten klappen.
    Gruß
    Firmus
    PS: habe den Eintrag aufgegriffen, weil ich mich das print-pdf interessierte.
    AW: Makro wird im bestimmten Sh. nicht ausgeführt
    20.03.2017 20:51:23
    Andi
    Hi Firmus,
    danke erst mal.
    Habe das mal getestet.
    Nun moniert das ganze nur noch, wenn eine Datei bereits vorhanden ist.- also wenn der Dateiname überschrieben werden soll.
    Ist es möglich, das das Makro dann trotzdem ausgeführt wird, auch wenn der Dateiname bereits besteht?
    (oder hat es etwas an meinem Excel zerschossen- dachte das dies vorher mal funktionierte- kann es nicht mit Sicherheit sagen.
    Public Sub Speichern_in_PDF_XLSX()
    Option Explicit
    Dim varPath As Variant
    Dim wbk As Workbook
    Dim wks As Worksheet
    Set wbk = ActiveWorkbook
    Set wks = Tabelle7
    On Error GoTo Fin
    varPath = Application.GetSaveAsFilename( _
    InitialFileName:="D:\Elektro Arbeit\", _
    FileFilter:="Excel(*.xlsx), *.xlsx", _
    Title:="Save as XLSX and PDF")
    If Not varPath = False Then
    If Dir(varPath)  "" Then
    Select Case MsgBox("Datei überschreiben?", 4 Or 32 Or 0, "Datei")
    Case vbYes
    With Application
    .ScreenUpdating = False
    .DisplayAlerts = False
    End With
    wbk.Activate
    wks.Activate
    wks.Copy
    With ActiveWorkbook
    .SaveAs varPath, 51
    .ExportAsFixedFormat Type:=xlTypePDF, Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, IgnorePrintAreas:=True
    .Close False
    End With
    End Select
    Else
    wbk.Activate
    wks.Activate
    wks.Copy
    With ActiveWorkbook
    .SaveAs varPath, 51
    .ExportAsFixedFormat Type:=xlTypePDF, Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, IgnorePrintAreas:=True
    .Close False
    End With
    End If
    Else
    MsgBox "Abgebrochen..."
    End If
    Fin:
    With Application
    .ScreenUpdating = True
    .DisplayAlerts = True
    End With
    If Err.Number  0 Then MsgBox "Fehler: " & _
    Err.Number & " " & Err.Description
    End Sub
    
    LG Andi
    Anzeige
    AW: Makro wird im bestimmten Sh. nicht ausgeführt
    20.03.2017 23:12:44
    Werner
    Hallo Andi,
    Versuchs mal mit
    Applikation.DisplayAlerts = False
    Code zum Speichern
    Applikation.DisplayAlerts = True
    
    Gruß Werner
    AW: Makro wird im bestimmten Sh. nicht ausgeführt
    21.03.2017 06:12:39
    Andi
    Guten Morgen Werner,
    habe das mal probiert- läuft sauberer - habe aber aus dem k ein c in Application gemacht.
    Am besten ist es- ich starte das Makro aus der Tabelle1 heraus- dort werde ich auch gleich beim Erstellen dieser hingeleitet.
    Danke erst mal.
    LG Andi
    Gerne u. Danke für die Rückmeldung. o.w.T.
    21.03.2017 10:45:58
    Werner

    318 Forumthreads zu ähnlichen Themen

    Anzeige
    Anzeige
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige