FlexPro
HistoryBase
Engineering
Training
Downloads
FlexPro Support
Knowledge
Community
About us
References
Jobs
General Contact
List Of Retailers
FlexPro Support
EN
DE
FR
Placeholder
Products and Solutions
Support and Downloads
Company
Magazine
Contact Us
Language
MyWeisang

Account settings

Topic

EMF Export über VBA

Home page Community Automation and VBA EMF export via VBA

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #34831
    Stefan Palaveev
    Participant

    Hallo,

    ich habe eine kleine Prozedur geschrieben, die Bilder im EMF Format exportieren soll.

    Sub Export()

    Dim Anzahl_Folder As Integer
    Dim File_Name As String

    Anzahl_Folder = ActiveDatabase.RootFolder.Objects(“.*.FLD”).Count – 1

    For i = 1 To Anzahl_Folder Step 2

    If i < 10 Then File_Name = "Bild_00" & i If i < 100 And i >= 10 Then File_Name = “Bild_0” & i
    If i >= 100 And i < 1000 Then File_Name = "Bild_" & i If i >= 1000 Then MsgBox (“Anzahl Bilder zu groß”)

    ActiveDatabase.Object(“AuswertungMessung_Nummer”).Open = True
    ActiveDatabase.ActiveObject.Selection.ActiveValue = i
    ActiveDatabase.Object(“AuswertungExport_Document.DOC”).Open = True
    Application.UpdateAll

    ActiveDatabase.ActiveObject.Selection.Export fpExportFormatEMF, _
    “D:DataExport” & File_Name & “.emf”

    Next i

    ActiveDatabase.Object(“AuswertungMessung_Nummer”).Open = False

    End Sub

    Die “Messung_Nummer” ist ein Datensatz aus einer Ganzzahl auf den eine Formel zugreift, die die Werte für das Diagramm aufbereitet.

    An sich läuft die Prozedur auch ganz gut, nur bestehen die Bilder aus weißer Farbe und sonst nichts. Die Prozedur funktioniert auch nur mit EMF und WMF nicht. PNGs und JPEG werden ausgegeben wie gewünscht.
    Exportiere ich die Bilder manuel als EMF über Rechtsklick auf das Dokument->Exporteren->Speichern, dann ist das Problem auch nicht mehr da. Ist das Problem bekannt und können Sie mir dabei helfen?

    Danke

    #34834
    Stefan Palaveev
    Participant

    Hallo,

    ich habe eine kleine Prozedur geschrieben, die Bilder im EMF Format exportieren soll.

    Sub Export()

    Dim Anzahl_Folder As Integer
    Dim File_Name As String

    Anzahl_Folder = ActiveDatabase.RootFolder.Objects(“.*.FLD”).Count – 1

    For i = 1 To Anzahl_Folder Step 2

    If i < 10 Then File_Name = "Bild_00" & i
    If i = 10 Then File_Name = “Bild_0” & i
    If i >= 100 And i = 1000 Then MsgBox (“Anzahl Bilder zu groß”)

    ActiveDatabase.Object(“AuswertungMessung_Nummer”).Open = True
    ActiveDatabase.ActiveObject.Selection.ActiveValue = i
    ActiveDatabase.Object(“AuswertungExport_Document.DOC”).Open = True
    Application.UpdateAll

    ActiveDatabase.ActiveObject.Selection.Export fpExportFormatEMF, _
    “D:DataExport” & File_Name & “.emf”

    Next i

    ActiveDatabase.Object(“AuswertungMessung_Nummer”).Open = False

    End Sub

    Die “Messung_Nummer” ist ein Datensatz aus einer Ganzzahl auf den eine Formel zugreift, die die Werte für das Diagramm aufbereitet.

    An sich läuft die Prozedur auch ganz gut, nur bestehen die Bilder aus weißer Farbe und sonst nichts. Die Prozedur funktioniert auch nur mit EMF und WMF nicht. PNGs und JPEG werden ausgegeben wie gewünscht.
    Exportiere ich die Bilder manuel als EMF über Rechtsklick auf das Dokument->Exporteren->Speichern, dann ist das Problem auch nicht mehr da. Ist das Problem bekannt und können Sie mir dabei helfen?

    Danke

    #34832
    Bernhard Kantz
    Participant

    Sorry, but we cannot reproduce your problem.

    Perhaps you have selected the wrong object. You should not use the [b]Selection[/b]-method. Use the [b]Object[/b]-method to get the diagram object and export this object.

    Example:
    [code]
    Dim oDiagram As Diagram2D
    Set oDiagram = ActiveDatabase.RootFolder.Object(“2D-Diagram”, fpObjectType2DDiagram)
    oDiagram.Export fpExportFormatEMF, “c:tempDiagram.emf”
    [/code]

    support@weisang.com

    #34833
    Stefan Palaveev
    Participant

    Vielen Dank für Ihre Hilfe.

    In meinem Fall handelt es sich um ein einseitiges Dokument und die Default SeitenNr. war seltsamerweise auf -1 gesetzt. Durch manuelle Eingabe der SeitenNr. wurde das Problem gelöst. Der richtige Code lautet dann:

    Sub ExportEMF()
    Dim oDocument As Document
    Set oDocument = ActiveDatabase.RootFolder.Object(“TestDocument.DOC”, fpObjectTypeDocument)
    oDocument.Export fpExportFormatEMF, “c:tempDiagram.emf”,,1
    End Sub

Viewing 4 posts - 1 through 4 (of 4 total)
  • You must be logged in to reply to this topic.