Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  VBA Papierformat angeben

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 Autodesk Produkte
Autor Thema:  VBA Papierformat angeben (1046 mal gelesen)
Frifer
Mitglied



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

Beiträge: 80
Registriert: 19.07.2012

i7 @x 3.5 mhz
16 GB Ram
win 7 ultimate 64 Bit
GTX 560 Ti

erstellt am: 28. Jan. 2015 10:58    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

Hallo!

ich brauche ein VBA Script der mir automatisch vom aktiven Layout die Größe nimmt und auf dem Plotter als Beutzerdefiniertes Papierformat einstellt.

Leider, nach 2 Tagen suchen und testen, bin ich zu keiner Lösung gekommen.

Kann mir da jemand bitte weiterhelfen?

Hier ist was ich so weit habe:

Code:

Public Sub canonprint()

Dim pwidth As Double
Dim pheight As Double
Dim paperwidth As Integer
Dim paperheight As Integer

If ThisDrawing.ActiveLayout.Name <> "Model" Then

      Dim Layout As AcadLayout
      On Error GoTo Err_Control
      Set Layout = ThisDrawing.ActiveLayout
     
      Layout.ConfigName = "Canon iPF750"    ' CALL PLOTTER
    Layout.GetPaperSize pwidth, pheight
       
       
   
    paperwidth = Math.Round(pwidth)
    paperheight = Math.Round(pheight)
   
   
      MsgBox Layout.CanonicalMediaName
     
      Layout.PlotWithPlotStyles = False
      Layout.PlotViewportBorders = False
      Layout.PlotViewportsFirst = True
     
      MsgBox paperwidth
     
   
   
Exit_Here:
      Exit Sub
Err_Control:
      Select Case Err.Number
      Case "-2145320861"
            MsgBox "Unable to Save Drawing- " & Err.Description
      Case "-2145386493"
            MsgBox "Drawing is setup for Named Plot Styles." & (Chr(13)) & (Chr(13)) & "Run CONVERTPSTYLES command", vbCritical, "Change Plot Style"
      Case Else
            MsgBox "Unknown Error " & Err.Number
      End Select

End If

End Sub


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

KlaK
Ehrenmitglied V.I.P. h.c.
Dipl. Ing. Vermessung, CAD- und Netz-Admin



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

Beiträge: 2624
Registriert: 02.05.2006

AutoCAD LandDesktop R2 bis 2004
Civil 3D 2005 - 2022
Bricscad V11-V21 pro
Plateia, Canalis
Visual Basic

erstellt am: 28. Jan. 2015 12:09    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 Frifer 10 Unities + Antwort hilfreich

Hallo Frifer,

Wäre besser gewesen diese Frage im VBA-Forum zu stellen aber vielleicht kann ein Mod das ja noch verschieben.

Zu Deiner Frage: Über das Thema benutzerdefiniertes Papierformat einstellen gibt es hier schon verschiedene Threads, aber so weit mir bekannt ist gibt es noch keine zufriedenstellende Lösung (außer man geht direkt über die Registry).

Die meisten lesen sich die Papierformate aus und suchen sich das nächstgrößere.
Beiträge dazu findest Du z.B. hier oder hier

Um die tatsächliche Größe des Layouts zu bekommen kannst Du acExtents beim Plotype verwenden. Aber leider liefert der Wert nicht immer den genauen Betrag (siehe hier). Habe da leider immer noch keine bessere Lösung gefunden.

Grüße
Klaus

PS.: Ergänz doch mal Deine Warnungen, dann hast Du wenigstens einen Hinweis
MsgBox "Unknown Error " & Err.Number & " : " & Err.Description

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