MsgBox Druckeinrichtung mit VBA abschalten
Guten Tag Zusammen,
durfte gestern ein altes Programm wieder rausholen und testen. Dabei habe ich jetzt folgendes Problem:
Das Programm öffnet xls/xlsx-Dateien und prüft sie auf gewisse Kriterien.
Beim öffnen der Dateien kommt es vor das eine MsgBox aufgeht und man die Druckeinrichtung auswählen soll.
Habe natürlich davor mit Google gesucht und nur den Befehl Application.DisplayAlerts = False gefunden, der den Warnhinweise/ Fehlermeldungen ausblenden sollte.
Diesen Befehl nutze ich aber schon und trotzdem erscheint das Fenster :/
Hätte jemand ein Tipp für mich wie ich die Meldung entweder umgehen kann oder so hinbekommen das vba automatisch Abbrechen drückt wenn diese Meldung erscheint?
Hier noch ein Codeschnipsel vom Programm der es vlleicht verständlicher macht:
Grüße Gimli3311
durfte gestern ein altes Programm wieder rausholen und testen. Dabei habe ich jetzt folgendes Problem:
Das Programm öffnet xls/xlsx-Dateien und prüft sie auf gewisse Kriterien.
Beim öffnen der Dateien kommt es vor das eine MsgBox aufgeht und man die Druckeinrichtung auswählen soll.
Habe natürlich davor mit Google gesucht und nur den Befehl Application.DisplayAlerts = False gefunden, der den Warnhinweise/ Fehlermeldungen ausblenden sollte.
Diesen Befehl nutze ich aber schon und trotzdem erscheint das Fenster :/
Hätte jemand ein Tipp für mich wie ich die Meldung entweder umgehen kann oder so hinbekommen das vba automatisch Abbrechen drückt wenn diese Meldung erscheint?
Hier noch ein Codeschnipsel vom Programm der es vlleicht verständlicher macht:
'Bildschirmgeflacker und Meldungen AUSschalten
Application.ScreenUpdating = False
Application.DisplayAlerts = False
'Max Daten Wert zuordnen
lngMaxData = objFoundFiles.Count
'Worksheet Tabelle auswählen
Output.Activate
'Für jede gefundene Datei in der Collection
For Each f In objFoundFiles
'Variablen Werte zuweisen
strPathName = fso.GetParentFolderName(f)
strFileName = fso.GetFileName(f)
StrFullPathFileName = fso.GetAbsolutePathName(f)
strAutoren = GetFileProperty(StrFullPathFileName, 20)
strTitle = GetFileProperty(StrFullPathFileName, 21)
strDataModified = GetFileProperty(StrFullPathFileName, 3)
strDataCreated = GetFileProperty(StrFullPathFileName, 4)
'Sucht nächste Freie Zeile
lngRow = Cells(Rows.Count, 1).End(xlUp).Row + 1
'Gibt die Datei informationen aus
Cells(lngRow, 1) = strPathName
Cells(lngRow, 2) = strFileName
Cells(lngRow, 3) = strTitle
Cells(lngRow, 4) = strAutoren
Cells(lngRow, 5) = strDataModified
Cells(lngRow, 6) = strDataCreated
'Fehlermeldung ausschalten
On Error Resume Next
'öffne Datei, nur Lesen, Keine Updates
Set wb = Workbooks.Open(f, ReadOnly:=True, UpdateLinks:=0, Password:="Passwort").Sheets(1)
'Suche nach Logbuch oder Logbook in Datei --> Funktion: search()
blFound = search()
'Ruft Funktion checkTemplate auf und gibt eine Ganzzahl zurück ()
lngTemplate = checkTemplate(blFound, strFileName)
'Schließe Datei. False = ohne zu speichern!
wb.Parent.Close False
'Aktiviert Tabelle Output
Output.Activate
'Wenn blFound = True wurde was gefunden
If blFound = True Then
Cells(lngRow, 7) = "JA"
Cells(lngRow, 7).Interior.Color = vbGreen
Else
Cells(lngRow, 7) = "NEIN"
Cells(lngRow, 7).Interior.Color = vbRed
End If
'Ausgabe Welche Vorlage
If lngTemplate <> 0 Then
Cells(lngRow, 8) = lngTemplate
Else
Cells(lngRow, 8) = lngTemplate
End If
'Regelt die Zähler und Abbruchkriterien
lngMaxData = lngMaxData - 1
lngCounter = lngCounter + 1
Debug.Print lngMaxData
'MsgBox ob nach weiteren Daten gesucht werden soll
If lngCounter >= lngBreak Then
If MsgBox("Sollen weitere Daten Angezeigt werden?", vbYesNo) = vbYes Then
lngBreak = lngBreak + Worksheets("Optionen").Cells(4, 2).Value
Else
Exit For
End If
'Falls keine Daten mehr vorhanden Ausgabe
ElseIf lngMaxData = 0 Then
MsgBox "Es sind keine Daten mehr vorhanden!"
Exit For
End If
'Zwischenspeichern
If lngCounter >= lngSave Then
ActiveWorkbook.Save
lngSave = lngSave + Worksheets("Optionen").Cells(7, 2).Value
End If
Next
'Object auf NULL setzen
blFound = False
Set objFoundFiles = Nothing
'Bildschirm und Meldungen wieder anschalten
Application.ScreenUpdating = True
Application.DisplayAlerts = True
Grüße Gimli3311
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 288806
Url: https://administrator.de/forum/msgbox-druckeinrichtung-mit-vba-abschalten-288806.html
Ausgedruckt am: 11.01.2025 um 10:01 Uhr
8 Kommentare
Neuester Kommentar
Moin,
was für ein "Druckeinrichtungsdialog" ? Zeig doch mal welchen Dialog du genau meinst.
Druckdialoge kommen eigentlich nur wenn man auch eine der Funktionen aufruft die mit dem Druck zu tun haben, die aber in deinem Code-Ausschnitt nicht ersichtlich ist, vermutlich in einem anderen Teil eures Codes ?
Außerdem enthält der Code Abfragen mit MSGBOXES und die stören dich nicht beim Batchbetrieb des Scripts?
Gruß grexit
was für ein "Druckeinrichtungsdialog" ? Zeig doch mal welchen Dialog du genau meinst.
Druckdialoge kommen eigentlich nur wenn man auch eine der Funktionen aufruft die mit dem Druck zu tun haben, die aber in deinem Code-Ausschnitt nicht ersichtlich ist, vermutlich in einem anderen Teil eures Codes ?
Außerdem enthält der Code Abfragen mit MSGBOXES und die stören dich nicht beim Batchbetrieb des Scripts?
Gruß grexit
Hmm der Dialog ist mir aus Excel nicht bekannt welche Excel-Version ?
Vielleicht ein Third-Party Add-In aktiviert oder ein Drucker-Tool im Tray geladen ?
Dann all diese Sachen deaktivieren. denn das würde erklären warum dieser Dialog eingeblendet wird, weil er nicht Teil von Excel ist.
Vielleicht ein Third-Party Add-In aktiviert oder ein Drucker-Tool im Tray geladen ?
Dann all diese Sachen deaktivieren. denn das würde erklären warum dieser Dialog eingeblendet wird, weil er nicht Teil von Excel ist.
OK, dann könnte es vermutlich auch ein Makro sein welches sich in einer der Mappen befindet die du öffnest.
Dann könnte das hier helfen:
Vor dem öffnen des Files die Events abschalten welche eventuelle AutoOpenMakros etc. in den geöffneten Dokumenten lahm legt.
und hinterher wieder
nicht vergessen.
Dann könnte das hier helfen:
Vor dem öffnen des Files die Events abschalten welche eventuelle AutoOpenMakros etc. in den geöffneten Dokumenten lahm legt.
application.EnableEvents = False
application.EnableEvents = True
Noch als Nachtrag und zur Info woher dieser Dialog vermutlich herkommt.
Stichwort: Anzeige der Seitenumbrüche in den Tabellen.
http://jeremykingsql.blogspot.de/2012/05/printer-setup-pop-up-when-open ...
Gruß grexit
Stichwort: Anzeige der Seitenumbrüche in den Tabellen.
http://jeremykingsql.blogspot.de/2012/05/printer-setup-pop-up-when-open ...
Gruß grexit