Thema Datum  Von Nutzer Rating
Antwort
Rot Win10/Excel 365 - AddIns - Öffnen/Schließen von Dateien
03.05.2022 11:43:29 CHRiSi
NotSolved

Ansicht des Beitrags:
Von:
CHRiSi
Datum:
03.05.2022 11:43:29
Views:
983
Rating: Antwort:
  Ja
Thema:
Win10/Excel 365 - AddIns - Öffnen/Schließen von Dateien

Hallo, liebe VBA-Gurus!

Ich plag mich nun schon seit einiger Zeit mit folgendem Problem ab und komm einfach nicht zu einer Lösung:

Über ein AddIns-Makro (xlam) können in einer Userform bestimmte xlsm-Dateien aufgerufen werden.
In diesen Dateien müssen Einträge vorgenommen werden, welche wiederum mittels ADODB-Connection in einer MSSQL-Datenbank gespeichert werden.
Damit ich den Fokus auf der geöffneten Datei habe, muss ich die Userform mit .Hide ausblenden.
Das funktioniert alles ganz prima!

Ich schaffe es allerdings nicht, dass ich nach der Bearbeitung der Datei diese schließe und gleichzeitig wieder das Addins-Userform anzeige (für den Aufruf einer anderen Datei). Sobald ich nämlich die geöffnete Datei schließe, ist Feierabend - sämtlicher Code, der danach folgt, wird nicht mehr ausgeführt.
Ich hab's auch schon damit probiert, vor dem Schließen (in Workbook_BeforeClose) das AddIns-Userform mit Application.Run wieder anzuzeigen und dann erst die Datei zu schließen - aber dann ist auch die Userform wieder weg!

Anbei eine zusammengefasste Abfolge des Codes:
1) ADDINS.xlam: Beim Öffnen des Addins wird das Flag userform_initial versorgt
userform_initial = True

2 + 6) ADDINS.xlam: Beim Initialize der Userform wird abhängig vom Flag die aufgerufene Datei geschlossen

Private Sub AddIns_Userform_Initialize()
	If userform_initial = False then
		Workbooks(Testdatei.xlsm).Close False
	End if
End Sub

3) ADDINS.xlam: Im Userform AddIns_Userform wird die Datei beim Klick auf Button OK geöffnet

Private Sub cmdOK_Click()
	Workbooks.Open Testdatei.xlsm
End Sub

4) TESTDATEI.xlsm: Beim Schließen der Datei mit dem OK-Button wird die Addins-Prozedur ShowUserform aufgerufen:

Private Sub cmdClose_Click()
	Application.Run "'AddIns.xlam'!ShowUserform"	
End Sub

5) ADDINS.xlam: Das Flag wird auf False gesetzt und die Userform wieder aufgerufen:

Public Sub ShowUserform
	userform_initial = False	
	AddIns_Userform.Show
End Sub

Hat jemand eine Idee, wie's geht?

lG, CHRiSi


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Win10/Excel 365 - AddIns - Öffnen/Schließen von Dateien
03.05.2022 11:43:29 CHRiSi
NotSolved