Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Pro ENGINEER
  Drucken über VBA

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo
Autor Thema:  Drucken über VBA (1625 mal gelesen)
TripleM
Mitglied
Konstrukteur


Sehen Sie sich das Profil von TripleM an!   Senden Sie eine Private Message an TripleM  Schreiben Sie einen Gästebucheintrag für TripleM

Beiträge: 11
Registriert: 20.08.2012

Pro/E

erstellt am: 18. Apr. 2013 08:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi,
bin gerade dabei ein keines Tool zu programieren, welches drucken soll.
Das Tool liest die Blattgröße aus und führt derzeit dann das jeweilige makro aus.
Dies hat zur folge das mein programm zu schnell ist und manchmal doch nicht so läuft wie es soll.
würde deshalb gerne auch das drucken über ein vb befehl steuern.
hat wer erfahrung wie man dies machen muss, aus dem guide werde ich nicht schlauer?

PS: haben für die verschiedene Formate druckerconfigs angelegt in denen alle information stehen.

danke
gruß
MMM

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thekensau
Mitglied



Sehen Sie sich das Profil von Thekensau an!   Senden Sie eine Private Message an Thekensau  Schreiben Sie einen Gästebucheintrag für Thekensau

Beiträge: 74
Registriert: 04.02.2010

Wildfire 5 (M120)

erstellt am: 18. Apr. 2013 10:55    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für TripleM 10 Unities + Antwort hilfreich

Hi

Ich hatte das selbe Problem beim drucken von Zeichnungen aus VBA.
Ich habe es für mich mit nem timer geregelt. Evtl hilft dir das ja auch weiter.
vom ablauf hab ich folgendes gemacht
Zeichnung öffnen - Blattgröße erfassen - makro auswählen - makro "drucken" laufen lassen - TIMER - zeichnung schließen - nächste Nummer
asm und prt bekommen bei mir etwas andere Zeiten zugeteilt, weil das drucken der "großen" asm etwas länger dauert.

sieht im Code in etwa so aus, quick and dirty 

  If asm_prt = 0 Then zeit_plus = 3
  If asm_prt = 1 Then zeit_plus = 1
 
    i = Timer
    Do While Timer < i + zeit_plus  'Sekunden
        DoEvents
    Loop

LG
Sepp

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

TripleM
Mitglied
Konstrukteur


Sehen Sie sich das Profil von TripleM an!   Senden Sie eine Private Message an TripleM  Schreiben Sie einen Gästebucheintrag für TripleM

Beiträge: 11
Registriert: 20.08.2012

Pro/E

erstellt am: 18. Apr. 2013 11:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

hab ich momentan ähnlich gelöst

Application.Wait (Now + TimeValue("00:01:00"))

wäre halt schon schön wenn man es mit dem richtige befehl macht, weil dann läuft das programm erst weiter wenn er tatsächlich ausgeführt ist.
ich finde aber auch im netzt nix zu dem thema 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

San Benedetto
Mitglied



Sehen Sie sich das Profil von San Benedetto an!   Senden Sie eine Private Message an San Benedetto  Schreiben Sie einen Gästebucheintrag für San Benedetto

Beiträge: 29
Registriert: 28.05.2013

Win7
Pro/e Wf4/Creo 2.0
VB2010express
VB2012express

erstellt am: 28. Mai. 2013 13:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für TripleM 10 Unities + Antwort hilfreich

Hallo

Drucken über Pro/e hab ich so gelöst
Problem ist die Erkennung des Blattformates
Sub wird über einen code aufgerufen das alles im Speicher befindliche ausdruckt
Drucker PostScript und Tiff sind die Namen der Drucker die in Pro/e Drucker definiert sind.


code


Public Sub Plotte_(ByVal Zeichnung As String, ByVal Drucker As String)
        Dim Drawing As IpfcModel
        Dim Plotten As IpfcPlotInstructions
        Dim Format As IpfcDrawingFormat
        Dim Formatname As String
        Dim Ausgabeformat As String
        Dim Dext As String
        Dext = "."
        If Drucker = "Postscript" Then Dext = ".ps"
        If Drucker = "TIFF" Then Dext = ".tif"

        Ausgabeformat = ""

        Drawing = session.CurrentModel
        Format = session.CurrentModel.GetSheetFormat(1)
        Formatname = Format.FullName.ToLower

        If Formatname.Contains("a0") Then Ausgabeformat = "a0"
        If Formatname.Contains("a1") Then Ausgabeformat = "a1"
        If Formatname.Contains("a2") Then Ausgabeformat = "a2"
        If Formatname.Contains("a3") Then Ausgabeformat = "a3"
        If Formatname.Contains("a4") Then Ausgabeformat = "a4"
        ' MsgBox("Format  " + Ausgabeformat)

        Plotten = (New CCpfcPlotInstructions).Create(Drucker)
        Plotten.PlotterName = Drucker
        Plotten.SeparatePlotFiles = True                                  'Jedes Blatt eine eigene Datei
        Plotten.PageRangeChoice = (New CCpfcPlotPageRange).PLOT_RANGE_ALL  'Alle Blätter
     
        If Ausgabeformat = "a4" Then

            Plotten.PaperSizeX = 8.5 'achtung  keine milimeter sondern zoll umrechnen
            Plotten.PaperSizeY = 11
            Plotten.PaperSize = (New CCpfcPlotPaperSize).VARIABLESIZEPLOT
            ' Plotten.PaperSize = (New CCpfcPlotPaperSize).A4SIZEPLOT      'plottet in Querformat
            Zeichnung = Zeichnung + Dext
            Label2.Text = Zeichnung
            Drawing.Export(Zeichnung, CType(Plotten, IpfcExportInstructions))
        ElseIf Ausgabeformat = "a3" Then
            Plotten.PaperSize = (New CCpfcPlotPaperSize).A3SIZEPLOT
            Zeichnung = Zeichnung + Dext
            Label2.Text = Zeichnung
            Drawing.Export(Zeichnung, CType(Plotten, IpfcExportInstructions))
        ElseIf Ausgabeformat = "a2" Then
            Plotten.PaperSize = (New CCpfcPlotPaperSize).A2SIZEPLOT
            Zeichnung = Zeichnung + Dext
            Label2.Text = Zeichnung
            Drawing.Export(Zeichnung, CType(Plotten, IpfcExportInstructions))
        ElseIf Ausgabeformat = "a1" Then
            Plotten.PaperSize = (New CCpfcPlotPaperSize).A1SIZEPLOT
            Zeichnung = Zeichnung + Dext
            Label2.Text = Zeichnung
            Drawing.Export(Zeichnung, CType(Plotten, IpfcExportInstructions))
        ElseIf Ausgabeformat = "a0" Then
            Plotten.PaperSize = (New CCpfcPlotPaperSize).A0SIZEPLOT
            Zeichnung = Zeichnung + Dext
            Label2.Text = Zeichnung
            Drawing.Export(Zeichnung, CType(Plotten, IpfcExportInstructions))
        End If


    End Sub


codesnippsel zum testen

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz