Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  TitleBlock per 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 Autodesk Produkte
Autor Thema:  TitleBlock per VBA (2749 mal gelesen)
Th3roux
Mitglied
Technischer Zeichner

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

Beiträge: 6
Registriert: 29.09.2011

erstellt am: 29. Sep. 2011 09:08    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 bin absoluter Anfänger was das Programmieren angeht und werde nach Abschluss meines Versuches mich noch einmal umfangreicher mit dem Programmieren beschäftigen!

Mein Programm soll bei Knopfdruck folgendes ausführen:

-Neues Blatt hinzufügen
-Neuen Rahmen einfügen
-Neues Schriftfeld einfügen

Bis auf das Schriftfeld funktioniert es auch wunderbar!
Hatte in der Api-Hilfe von Inventor und in diesem Forum versucht vergleichbaren Code
zu finden um mein Problem zu lösen. Leider hat es mit den Lösungen angepasst auf mein Fall
nicht funktioniert.

Code:
Private Sub CommandButton1_Click()

'################################################
'Neues Blatt hinzufügen

Dim oDrawDoc As DrawingDocument
Set oDrawDoc = ThisApplication.ActiveDocument

Dim oNewSheet As Sheets
Set oNewSheet = oDrawDoc.Sheets

Call oNewSheet.Add(kA0DrawingSheetSize)

'#################################################
'Neuen Rahmen einfügen

Dim oSheet As Sheet
Set oSheet = oDrawDoc.ActiveSheet

Call oSheet.AddBorder("A0")

'#################################################
'Neues Schriftfeld einfügen

Dim oTitleBlockDef As TitleBlockDefinition
Set oTitleBlockDef = oDrawDoc.TitleBlockDefinitions.Item("DIN")

Dim oTitleBlock As TitleBlock
Set oTitleBlock = oSheet.AddTitleBlock(oTitleBlockDef)


End Sub


Code:
Run-time error '5'
Invalid procedure call or argument

Außerdem hab ich noch eine generelle Frage:

Bin ich gezwungen den VBA-Editor+Visual Basic zu benutzen zur Verwendung der Inventor API oder kann ich auch z.B in Java programmieren?

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

PaulSchuepbach
Moderator
Programmierer




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

Beiträge: 1005
Registriert: 01.10.2003

erstellt am: 29. Sep. 2011 17:12    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 Th3roux 10 Unities + Antwort hilfreich

Hallo,

in welcher Zeile kackt denn Dein Code genau ab - also wo kommt der Runtime Error 5 ?

Zu Deiner 2. Frage:
Ja, Du kannst z.B. mit .NET oder sonst was via COM programmieren ---> s. API-Hilfe bzw. in der
Inventor-Installation gibt's Beispiele für VB.NET und C#.NET

------------------
Grüsse, Paul

Inventor-Programmierung, Inventor-Tools und Inventor API-Schulung

YouTube Chanel

Meine Tochter auf Youtube

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

Th3roux
Mitglied
Technischer Zeichner

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

Beiträge: 6
Registriert: 29.09.2011

erstellt am: 30. Sep. 2011 07:36    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

Code:
Set oTitleBlock = oSheet.AddTitleBlock(oTitleBlockDef)

In der Zeile gibt er mir den Error!
Die ersten 2 Aufgaben erledigt er.

Edit:
Ich konnte das Problem weiter eingrenzen!
Hab ein neues Schriftfeld erstellt mit Bezug auf iProps und es hat geklappt.
Die Fehlermeldung hängt mit den "Aufgeforderten Eingaben" die ich damals im Schriftfeld gesetzt habe zusammen.
Hat jemand eine Ahnung was da das Problem sein könnte?

[Diese Nachricht wurde von Th3roux am 30. Sep. 2011 editiert.]

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

PaulSchuepbach
Moderator
Programmierer




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

Beiträge: 1005
Registriert: 01.10.2003

erstellt am: 30. Sep. 2011 09:21    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 Th3roux 10 Unities + Antwort hilfreich

Schau mal in die API-Hilfe unter 'Sheet.AddTitleBlock Method', unten sind 2 Links auf Bsp-Codes.
der 2. Link 'Title Block Definition Create and Insert sample' zeigt wie's geht (Prompted Strings als String-Array übergeben:

    ' This title block definition contains one prompted string input.  An array
    ' must be input that contains the strings for the prompted strings.
    Dim sPromptStrings(1 To 2) As String
    sPromptStrings(1) = "String 1"
    sPromptStrings(2) = "String 2"

    ' Add an instance of the title block definition to the sheet.
    Dim oTitleBlock As TitleBlock
    Set oTitleBlock = oSheet.AddTitleBlock(oTitleBlockDef, , sPromptStrings)

HTH

------------------
Grüsse, Paul

Inventor-Programmierung, Inventor-Tools und Inventor API-Schulung

YouTube Chanel

Meine Tochter auf Youtube

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

Th3roux
Mitglied
Technischer Zeichner

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

Beiträge: 6
Registriert: 29.09.2011

erstellt am: 30. Sep. 2011 11: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

Hat nun alles geklappt!
Danke vielmals für die Hilfe!

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