Registriert seit: 22.02.2016
Version(en): 2010
Hallo zusammen,
habe eine Knifflige Frage. Per Schaltfläche soll ein Dokument gedruckt werden, und danach mit samt dem Excel geschlossen werden.
If Workbooks.Count = 1 Then
Application.DisplayAlerts = False
Application.Quit
Else
ActiveWorkbook.Close savechanges:=False
End If
Dummerweise wird die "Personal.Xlsb" mit gezählt und zumindest ich müsste folgendes nehmen damit es funktioniert.
If Workbooks.Count = 2 Then
Application.DisplayAlerts = False
Application.Quit
Else
ActiveWorkbook.Close savechanges:=False
End If
Dies könnte jedoch einen ungewollten Effekt haben bei Benutztern, die die "Personal.xlsb" nicht haben.
Gibt es noch andere Lösungsansätze?
Registriert seit: 22.02.2016
Version(en): 2010
Ich habe selbst eine Lösung herausgefunden, will euch diese nicht vorenthalten
Sub Dokument_schliessen()
If IsWorkbookOpen("PERSONAL.XLSB") Then
If Workbooks.Count = 2 Then
Application.DisplayAlerts = False
Application.Quit
Else
ActiveWorkbook.Close savechanges:=False
End If
Else
If Workbooks.Count = 1 Then
Application.DisplayAlerts = False
Application.Quit
Else
ActiveWorkbook.Close savechanges:=False
End If
End If
End Sub
Function IsWorkbookOpen(strWB As String) As Boolean
On Error Resume Next
IsWorkbookOpen = Not Workbooks(strWB) Is Nothing
End Function
Registriert seit: 14.04.2014
Version(en): Office 2013/2016/2019/365
Hi,
anbei eine Alternative
Code:
Option Explicit
Sub xls_schliesen()
Application.DisplayAlerts = False
If WBCount > 1 Then ThisWorkbook.Close savechanges:=False Else: Application.Quit
End Sub
Private Function WBCount() As Integer
Dim wb As Workbook
For Each wb In Application.Workbooks
If InStr(1, wb.Name, "PERSONAL.XLSB") = 0 Then WBCount = WBCount + 1
Next
Set wb = Nothing
End Function
lg
Chris
lg Chris
Feedback nicht vergessen.
3a2920576572206973742064656e20646120736f206e65756769657269672e
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo,
Versteift Euch doch nicht so sehr auf die Persönliche Arbeitsmappe.
Es könnten noch mehr (ausgeblendete Mappen geladen sein.
Gruß Uwe
Registriert seit: 14.04.2014
Version(en): Office 2013/2016/2019/365
Hallo Uwe,
:)
stimmt, aber
wer blendet schon Arbeitsmappen aus, ich vermute ca. 99% der "normalen" Anwender wissen nicht mal das es die Möglichkeit gibt Mappen auszublenden.
lg
Chris
lg Chris
Feedback nicht vergessen.
3a2920576572206973742064656e20646120736f206e65756769657269672e
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
eine Frage hätt ich da noch - ist einer, der VBA benutzt, noch normal :15:
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo,
für alle Beknackten, die noch VBA benutzen, hier mein Dateinamen unabhängiger Vorschlag:
[Bild: sm13.gif]Sub Dokument_schliessen()
If IchBinNichtAllein(ThisWorkbook) Then
ThisWorkbook.Close False
Else
ThisWorkbook.Saved = True
Application.Quit
End If
End Sub
Function IchBinNichtAllein(Ich As Workbook) As Boolean
Dim oWb As Workbook
For Each oWb In Workbooks
If oWb.Windows(1).Visible And oWb.Name <> Ich.Name Then
IchBinNichtAllein = True
Exit For
End If
Next oWb
End Function
Gruß Uwe
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hallo zusammen,
(24.02.2016, 17:15)chris-ka schrieb: ...wer blendet schon Arbeitsmappen aus, ich vermute ca. 99% der "normalen" Anwender wissen nicht mal das es die Möglichkeit gibt Mappen auszublenden.
zu diesen 99% gehöre ich zwar nicht. Mir erschließt allerdings überhaupt nicht, aus welchem Grund eine Mappe ausgeblendet werden soll. Diese Funktion ist in meinen Augen überflüssig wie ein Kropf.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallo,
eine Arbeitsmappe auszublenden macht z.B. dann Sinn, wenn sie bei der Arbeit stört oder überflüssig ist. Ich verhindere dadurch den direkten Zugriff auf die Datei. Der user muss sie erst einblenden, um darin etwas zu ändern, oder ... Das wäre dann diesbezüglich ähnlich wie ein AddIn. Ich könnte nun ja behaupten, AddIns sind überflüssig - ausgeblendete Arbeitsmappen geh'n ja auch. Ich tu's aber nicht
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi André,
Zitat:wenn sie bei der Arbeit stört oder überflüssig ist.
lieben Dank für deine Erklärung. So vage hatte ich an diese Möglichkeit gedacht - aber das deckt sich mit meiner Meinung, eine Mappe, die ich nicht brauche, zu schließen. Diese Methode spart wohl auch noch Arbeitsspeicher.
Aber wie heißt's bei uns so schön: Katz mag Meis, i it amol broata.
Für Nichtallgäuer: Die Katze mag Mäuse, ich mag sie nicht einmal gebraten. :32:
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)