Von Formelformular zum Konturplott

SupportCommunity Automation and VBA Von Formelformular zum Konturplott

Ansicht von 2 Beiträgen - 1 bis 2 (von insgesamt 2)
  • Autor
    Beiträge
  • #28264
    Wiebke MüllerWiebke Müller
    Teilnehmer

    Hallo,

    ich habe über VBA ein Formelformular erstellt mit dem Ergebnis eines Konturplottes CWT.

    Nun möchte ich aus dieses Formelformular ein Diagramm erzeugen welches den Konturplott anzeigt.

    Wie kann ich das machen?

    Hier der Code womit ich dad Formelformular gemacht habe:

    ‘Formelblatt aktivieren
    Rechn = “XKonturplott”
    ActiveDatabase.TaskWindows(fpTaskWindowObjectList).Activate
    ActiveDatabase.Selection.SelectObject Rechn
    ‘Formel aktivieren und das in ” ” dort eintragen
    ‘_PSpectrum und _Spectrum -> Konturplott erstellen -> CWT
    ‘Falls DB Normal
    ActiveDatabase.ActiveObject.Formula = _
    “Dim SourceData = XKorrigieren” & Chr(13) & Chr(10) & _
    “If DataType(SourceData) == TYPE_VARIANT Then” & Chr(13) & Chr(10) & _
    ” Dim _Result = List(SourceData)” & Chr(13) & Chr(10) & _
    ” Parallel For Each Element _i In SourceData Do” & Chr(13) & Chr(10) & _
    ” Dim _PSpectrum” & Chr(13) & Chr(10) & _
    ” _PSpectrum = CWTSpectrum(SourceData.[_i], SPECTRUM_CWT_DB, WAVELET_MORLET, 8.000000000000000, 256n, FALSE, 0.000000000000000, 0.4999999432400000, 0n, 20.00000000000000, 256n)” & Chr(13) & Chr(10) & _
    ” _Result.[_i] = _PSpectrum” & Chr(13) & Chr(10) & _
    ” End” & Chr(13) & Chr(10) & _
    ” Return _Result” & Chr(13) & Chr(10) & _
    “Else” & Chr(13) & Chr(10) & _
    ” Dim _Spectrum” & Chr(13) & Chr(10) & _
    ” _Spectrum = CWTSpectrum(SourceData, SPECTRUM_CWT_DB, WAVELET_MORLET, 8.000000000000000, 256n, FALSE, 0.000000000000000, 0.4999999432400000, 0n, 20.00000000000000, 256n)” & Chr(13) & Chr(10) & _
    ” Return _Spectrum” & Chr(13) & Chr(10) & _
    “End”

     

    Vielen Dank

     
    #28265
    Bernhard KantzBernhard Kantz
    Moderator

    Neue Objekte (wie 3D-Diagramme) lassen sich mit der .Add-Methode eines Folder-Objekts anlegen. Das neu erzeugte Diagram3D-Objekt hat die Aufzählungseigenschaft Curves, deren Add-Methode fügt einen neuen Kurvenzug (des gewünschten Typs) hinzu. Das neue Surface3D-Objekt besitzt die Eigenschaft DataSets, dessen Eigenschaft DataSet enthält den FPScriptausdruck, welche die Oberfläche beschreibt.

    Näheres zum Objektmodell findet man in der Online-Hilfe (im Inhalt) unter Automatisierung von Abläufen > Automatisierung mit FlexPro Visual Basic > Visual Basic-Verzeichnis für FlexPro > Objekte und Auflistungen.

    Da der Code stark an jenen erinnert, welche über eine Makroaufzeichnung gewonnen wurde, liegt es nahe, auch die Erzeugung des Diagramms selbst in die Aufzeichnung zu integrieren.

    Möglicherweise ist aber die automatische Erzeugung mittels eines Makros zu aufwendig. Es wäre zu prüfen, ob die Verwendung einer Analysevorlage bereits ausreichend ist. Ein entsprechendes Tutorial findet sich in der Hilfe unter Tutorials > Zum Anpassen von FlexPro > Tutorial Vorlagenerstellung.

     

Ansicht von 2 Beiträgen - 1 bis 2 (von insgesamt 2)
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.