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

per VBA-CB erzeugen mit Code

per VBA-CB erzeugen mit Code
13.06.2016 14:44:16
Alex
Servus,
ich erstell eine neue "Druckseite", auf die ein CommandButton erscheinen soll, mit dem ich die Druckseite drucken kann.
Den Button mit VBA einfügen etc. ist kein Problem...
Wie verknüpfe ich aber bei der Erstellung des CB den Code dazu?
Code für die Erstellung des CB:

Set CB = Worksheets("Druckseite").OLEObjects.Add("Forms.CommandButton.1") 'Button einfügen
With CB 'Button formatieren
.PrintObject = False
.Object.Caption = "Drucken"
.Top = 123
.Left = 456
.Height = 40
.Width = 150
End With
Befehl, der hinterlegt werden soll:
Sub Drucken()
Dim strDatei As String
Application.Dialogs(xlDialogPrint).Show
End Sub
Danke!
Gruß Alex

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: per VBA-CB erzeugen mit Code
13.06.2016 15:49:43
ChrisL
Hi Alex
Sub mach()
Dim oCB As Object
Dim WS As Worksheet
Dim sCode As String
Set WS = Worksheets("Druckseite")
Set oCB = WS.OLEObjects.Add("Forms.CommandButton.1")
With oCB
.PrintObject = False
.Object.Caption = "Drucken"
.Top = 123
.Left = 456
.Height = 40
.Width = 150
End With
sCode = "Private Sub CommandButton1_Click()" & vbCrLf & _
"Call Drucken" & vbCrLf & _
"End Sub"
ThisWorkbook.VBProject.VBComponents(WS.CodeName).CodeModule.AddFromString sCode
End Sub

cu
Chris

AW: per VBA-CB erzeugen mit Code
16.06.2016 12:29:28
Alex
Servus Chris,
perfekt, so funktioniert es.
Ich habe versucht eine kleine Ergänzung noch hinzuzufügen, aber dann kommt ein Fehler.
Versuch 1:

sCode = "Private Sub CommandButton1_Click()" & vbCrLf & _
"Msgbox ("Bitte wählen Sie nur den Drucker aus und verändern keine Einstellungen!")" &  _
vbCrLf & _
"Call VBAdrucken" & vbCrLf & _
"End Sub"
Versuch 2:

sCode = "Private Sub CommandButton1_Click()" & vbCrLf & _
"Dim text as string" & vbCrLf & _
"text = "Bitte wählen Sie nur den Drucker aus und verändern keine Einstellungen!")" &  _
vbCrLf & _
"Msgbox Text" & vbCrLf & _
"Call VBAdrucken" & vbCrLf & _
"End Sub"
Beide scheitern, ich nehme an er kommt mit den "" nicht klar.
Lösung?
Vielen Dank!
Gruß Alex

Anzeige
AW: per VBA-CB erzeugen mit Code
16.06.2016 12:53:56
Michael
Hallo!
Müsste so klappen...
scode = "Private Sub CommandButton1_Click()" & vbCrLf & _
"Msgbox ""Bitte wählen Sie nur den Drucker aus und verändern keine Einstellungen!""" &  _
_
vbCrLf & "Call VBAdrucken" & vbCrLf & "End Sub"
Du musst die "", welche den Msg-Box Prompt abgrenzen, natürlich verdoppeln, da innerhalb eines größeren Strings.
LG
Michael

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige