Ich habe ein Benutzerformular, das beim Öffnen der Arbeitsmappe geöffnet wird. Excel ist auch ausgeblendet, so dass das Benutzerformular alles ist, was dem Benutzer angezeigt wird.vba Benutzerformular beim Öffnen anzeigen, Arbeitsblatt ausblenden, Taskleisten-Symbol beibehalten
Private Sub Workbook_Open()
Application.Visible = False
UserForm1.Show vbModeless
End Sub
Dies ist jedoch verbirgt sich auch das Symbol für Excel in der Taskleiste, so dass, wenn ein Benutzer aus dem Benutzerformular Klicks entfernt sie bekommen können in sie nicht zurück, es sei denn mit Alt + Tab oder schließt/minimiert andere Fenster, die vor sind des Benutzerformulars. Ich möchte nicht, dass die Benutzer dies tun, und manche versuchen sogar, das Formular erneut zu öffnen (vorausgesetzt, es ist geschlossen), was wiederum zu Aufforderungen und Fehlern führt, die ich auch nicht möchte.
Im Wesentlichen brauche ich ein Symbol in der Taskleiste für das Benutzerformular.
Sobald die Userform geschlossen ist, ich habe es so, dass Excel
schließtUnload UserForm1
Application.Quit
Beispiele Ich habe im Internet für dieses Problem gefunden nicht ganz erreichen, was ich zu tun versuchen. Ändern der Form zu minimieren und offen wie modal arbeitet das Symbol in der Taskleiste zu halten und den Benutzer nicht bearbeiten lassen Sie das Arbeitsblatt
Application.WindowState = xlMinimized
UserForm1.Show (1)
Das hat aber zwei Probleme ..... 1. - die Userform nicht der Fokus wird, 2. - der Benutzer kann auf das Taskleistensymbol klicken und das Blatt ist jetzt hinter dem Benutzerformular sichtbar, was ich nicht tun kann, was sie können.
Was ist damit: http://stackoverflow.com/questions/15949023/displaying-an-excel-userform-as-a-button-in-the-taskbar –
Ich habe gerade versucht, und es ist nicht erschienen etwas tun. Ich bin nicht vertraut mit Klassenmodulen, so ist es wahrscheinlich etwas falsch mit der Implementierung. Ich habe es in ein neues Klassenmodul für das Benutzerformular eingefügt (Rechtsklick> Einfügen> Klassenmodul), gespeichert und die Arbeitsmappe erneut ausgeführt. – Aurelius
Ich verstehe, dass die Lösung in der Frage nicht geradlinig ist, aber es sieht sehr * aus * ein Duplikat Ihrer Frage. Der Code in dieser Frage wird in das Userform-Modul eingegeben - was eigentlich eine Klasse ist. –