Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1692to1696
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

UserForm

UserForm
29.05.2019 15:10:26
Michael
Hallo Allerseits
Ich habe mir eine UserForm mit Druckbefehlen kreiert. Jetzt komme ich aber nicht mehr weiter.
Frage 1
Ist es möglich einen CommandButton in der UserForm so zu gestalten das er bei einem Linksklick darauf ein Druck-Makro 1x ausführt, und bei einem Rechtklick auf den Button vorab die Stückzahl des Drucks abfragt. Also eine Zahleneingabe vor den Druck stattfindet.
Frage 2
Ist es machbar, diese UserForm auf dem Desktop abzulegen, oder zu Verknüpfen. So das ich ständig darauf zugreifen kann?
Falls nicht, wie füge ich sie auf dem Sheet ein?
Im Anhang ist eine Beispieldatei
Vielen Dank für eure Hilfe in Voraus
Gruß Michael
https://www.herber.de/bbs/user/130103.xlsm

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: UserForm
29.05.2019 15:35:38
onur
Zu 1 (Nimm das MouseUp-Event statt des Click-Events):
Private Sub CommandButton1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As  _
Single, ByVal Y As Single)
Dim anz As Integer
anz = 1
If Button = 2 Then anz = InputBox("Wieviel Examplare?")
Sheets("Sticker").PrintOut From:=1, To:=32, Copies:=anz, Collate:=True, IgnorePrintAreas:= _
False
End Sub

AW: UserForm
29.05.2019 17:26:48
Michael
Hallo Onur
Vielen Dank, das klappt wunderbar.
Kannst du mir jetzt auch noch eine Auskunft zu meiner zweiten Frage geben? Wie schaffe ich es die UserForm in einem sheet zu integrieren, oder besser gleich vom Desktop aus zu aktivieren.
Dann noch eine Zusatzfrage: Kann ich den Drucker so definieren das nicht der Standartdrucker sondern ein anderer Drucker angesprochen wird? Für die Etiketten gibt es einen besonderen Drucker.
Viele Grüße Michael
Anzeige
AW: UserForm
29.05.2019 17:29:25
onur
Habe ich doch! Hast du die Datei nicht runtergeladen?
Wenn die Userform durch das Button auf dem Sheet gestartet wird (oder beim Laden der Datei), minimiert sich das Blatt.
AW: UserForm
29.05.2019 17:47:07
onur
So kann man z.B. Drucker auswählen:
Dim strPrinter As String
strPrinter = Application.ActivePrinter'Aktuellen Druckernamen speichern
Application.ActivePrinter = "Adobe PDF auf Ne03:"'Nur ein Beispiel
ActiveSheet.PrintOut Copies:=1, Collate:=True 'usw usw
Application.ActivePrinter = strPrinter'Wieder zurücksetzen

AW: UserForm
29.05.2019 23:50:29
Michael
Hallo Onur
Ich war mit Blindheit geschlagen. Deine Datei habe ich völlig übersehen, habe nur den Code kopiert und auf allen Buttons angepasst. Bin gerade nach Hause gekommen, war im Kino, Vorpremiere Godzilla 2019. Werde mir deine Datei morgen in Ruhe anschauen. Vielen Dank auch für die Drucker einbindung.
Viele Grüße und einen ruhigen Feiertag
Michael
Anzeige
Nachfragen UserForm
31.05.2019 11:25:24
Michael
Hallo Onur
Habe deine Datei ausprobiert. Es gibt damit aber ein paar Probleme. Wenn ich die Datei öffne, wird sie minimiert und nur die UserForm wird angezeit. Soweit - so gut. Andere Excel Dateien lassen sich danach nicht mehr öffnen und das kleine "Rad" am Mauszeiger ist wie wild am Drehen.
Habe folgenden Code bei Google gefunden und ausprobiert
In VBA unter "Diese Arbeitsmappe"
Option Explicit
Private Sub Workbook_Open()
Userform1.Show vbModeless
End Sub
Das funktioniert zwar, ist aber auch nicht wirklich zufriedenstellend. Aber vielleicht kann man ja darauf aufbauen. Ist es möglich in VBA unter "Diese Arbeitsmappe" weitere Parameter einzugeben?
Ziel wäre das die UserForm
1)fest in einem leeren Blatt oben links verankert ist
2)das die Mappe an die Größe der UserForm angepasst wird
3)sämtliche Menüleisten oberhalb des Blattes, außer min max und schließen, ausgeblendet werden
4)ist es möglich dieser Excel Mappe ein anders Miniatur Symbol zu geben? Damit man die Datei von anderen unterscheiden kann. Evtl. ein Druckersymbol.
5)und am wichtigsten. All diese Anpassungen sollen sich natürlich nur auf diese eine Mappe auswirken. Andere Excel Dateien dürfen davon nicht betroffen werden, auch nicht bei gleichzeitiger Verwendung
Noch eine Frage zur Drucker Bestimmung. Habe ich deinen Code so korrekt angepasst? Bin zu Hause und kann es hier leider nicht ausprobieren.
Private Sub CommandButton2_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As  _
_
Single, ByVal Y As Single)
' NOM Drucken
Dim strPrinter As String
strPrinter = Application.ActivePrinter "Brother MFC 9140"    'Aktuellen Druckernamen  _
speichern
Dim anz As Integer
anz = 1
If Button = 2 Then anz = InputBox("Anzahl?")
Application.ActivePrinter = "Zebra ZM4"
Sheets("Sticker").PrintOut From:=1, To:=1, Copies:=anz, Collate _
:=True, IgnorePrintAreas:=False
Application.ActivePrinter = strPrinter
End Sub
Viele Fragen und viele Grüße
Michael
Anzeige
AW: Nachfragen UserForm
31.05.2019 11:32:48
onur
Dein Code sieht korrekt aus (bis auf "Brother MFC 9140" - das muss weg - der Drucker soll ja AUSGELESEN werden und nicht gesetzt), aber könnte sein, dass der Druckername "Zebra ZM4" noch einen Anhang wie hier:
"Samsung CLP-300 Series auf Ne00:"

hat/braucht, wenn du im Netzwerk arbeitest.
AW: Nachfragen UserForm
31.05.2019 11:52:17
Michael
Hallo Onur
"'Aktuellen Druckernamen speichern" hat mich da wohl verwirrt. Ich dachte ich sollte den angeben. Bei solchen Verständniss Fehlern bin ich spitzenreiter. Beide Drucker sind lokale Drucker, direkt über USB am PC angeschlossen.
Hast du zu den Punkten 1-5 auch noch so ein paar fantastische Ideen?
Gruß Michael
Anzeige
AW: Nachfragen UserForm
31.05.2019 11:58:16
onur
Der Code speichert den aktuellen Drucker zwischen, ändert ihn auf den Zebra-Drucker und setzt ihn später wieder zurück, damit nicht danach alles auf dem Zebra-Drucker gedruckt wird.
Zu 1-5: Ehrlich gesagt viel zu viel Aufwand für so eine Spielerei - deswegen halte ich mich da raus.
AW: Nachfragen UserForm
31.05.2019 12:25:17
Michael
Hallo Onur
Alles klar. Dann noch gannz vielen Dank für deine bisherige Hilfe.
Viele Grüße
Michael
AW: Nachfragen UserForm
31.05.2019 17:47:05
Michael
Möchte doch noch mal nerven
Eine Sache ist äußerst störend. Wenn die Datei mit der UserForm geöffnet ist und man eine andere Excel Mappe öffnet, befindet sich die UserForm weiterhin im Vordergrund. Gibt es die Möglichkeit einen Befehl einzubauen der aussagt: Wenn weitere Dateien geöffnet werden dann UserForm dahinter.
Viele Grüße
Michael
Anzeige
AW: Nachfragen UserForm
31.05.2019 18:19:49
onur
Und woher soll die Userform wissen, daß du noch eine Datei öffnest?
AW: Nachfragen UserForm
31.05.2019 20:42:41
Michael
Sorry, wenn meine Frage unsinnig war. Aber wenn ich die Antwort wüsste, bräuchte ich ja nicht Fragen. Ich bin nur immer wieder erstaunt, das wenn ich eine umfangreiche Frage oder Aufgabe habe, die mir über den Kopf wächst. Das das dann oft mit einem 2 0der 3 Zeiler zu lösen ist. Auf eine Art und Weise, auf die ich nie gekommen wäre. Ich Google nun schon den ganzen Tag, habe jede Menge Lösungsvorschläge im Netz gefunden und ausprobiert. Das sinnvollste, bzw. einfachste, was ich gefunden habe war:
Private Sub Workbook_Open()
Application.WindowState = xlMinimized
UserForm1.Show vbModeless
End Sub
Private Sub Workbook_WindowActivate(ByVal Wn As Window)
Application.WindowState = xlMinimized
UserForm1.Show vbModeless
End Sub
Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
Application.WindowState = xlMinimized
UserForm1.Hide
End Sub
Das funktioniert auch einmal gut, man macht eine andere Datei auf und die UserForm versteckt sich. Nur wenn man sie wieder aktivieren will muss man die Datei mit der Form anklicken, dann wird aber beides groß, Datei und Form und dann ist alles beim alten. Die Form bleibt vorn, oder alles wird minimiert.
Viele Grüße
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige