Ankündigung

Einklappen
Keine Ankündigung bisher.

Querschnitte via RSCOM in RSTAB hochlade

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Querschnitte via RSCOM in RSTAB hochlade

    Hallo,

    ich habe folgendes Problem:

    Ich habe mir in Excel über ein Optimierungsverfahren neue Querschnitte für eine im Hintergrund geöffnete RSTAB-Struktur ermittelt.

    Jetzt will ich die neuen, optimierten Querschnitte via VBA (RSCOM) in RSTAB einlesen: Ich bekomme aber jedesmal eine Fehlermeldung:

    Laufzeitfehler '5':
    Ungültiger Prozeduraufruf oder ungültiges Argument

    Fehlermeldung kommt in der rot markierten Zeile

    Inhalt der Zellen
    Tabelle1.Cells(5, 67): "TO 407,62/300/20/20/20/20"
    Tabelle1.Cells(5, 67): "TO 387,42/300/20/20/20/20"



    Hier der Code:


    Sub ExportCrSc()

    Dim RSPos As RSTAB6.Structure
    Dim RSTopo As RSTAB6.IrsStructuralData
    'Dim i, count As Integer


    Set RSPos = GetObject(, "RSTAB6.Structure")
    RSPos.rsGetApplication.rsLockLicence
    Set RSTopo = RSPos.rsGetStructuralData


    ReDim crsc(1) As RS_CROSS_SECTION


    crsc(0).iNo = 1
    crsc(0).strDescription = Tabelle1.Cells(5, 67)

    crsc(1).iNo = 2
    crsc(1).strDescription = Tabelle1.Cells(6, 67)


    RSTopo.rsPrepareModification

    RSTopo.rsSetCrossSectionArr 2, crsc(0)

    RSTopo.rsFinishModification



    RSPos.rsGetApplication.rsUnlockLicence
    Set RSTopo = Nothing
    Set RSPos = Nothing

    End Sub

    Weiß eine oder einer von euch, was da los sein kann?
    Schon mal vielen Dank im Voraus!

    lg
    Christoph

  • #2
    AW: Querschnitte via RSCOM in RSTAB hochlade

    Hab die Lösung soeben selber gefunden!

    Für die die es interessiert:

    Sub ExportCrSc()

    Dim RSPos As RSTAB6.Structure
    Dim RSTopo As RSTAB6.IrsStructuralData
    Dim i, count As Integer


    Set RSPos = GetObject(, "RSTAB6.Structure")
    RSPos.rsGetApplication.rsLockLicence
    Set RSTopo = RSPos.rsGetStructuralData

    count = RSPos.rsGetStructuralData.rsGetMemberCount

    ReDim crsc(count) As RS_CROSS_SECTION

    For i = 0 To count - 1

    crsc(i).iNo = i + 1
    crsc(i).strDescription = Tabelle1.Cells(i + 5, 67)
    crsc(i).iMaterialNo = Tabelle1.Cells(i + 5, 19)

    RSTopo.rsPrepareModification

    RSTopo.rsSetCrossSection crsc(i)

    RSTopo.rsFinishModification

    Next


    RSPos.rsGetApplication.rsUnlockLicence
    Set RSTopo = Nothing
    Set RSPos = Nothing

    End Sub

    Danke!

    Kommentar

    Lädt...
    X