Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Aktualisieren einer Stückliste unterdrücken

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:  Aktualisieren einer Stückliste unterdrücken (2062 mal gelesen)
yamaha
Mitglied
Konstrukteur


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

Beiträge: 374
Registriert: 19.05.2004

Autocad/Inventor 2022, Windows 10 Pro 64Bit

erstellt am: 20. Jul. 2011 12:35    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 zusammen,

nachfolgend eine Funktion mit der ich
Bauteile die in einer IDW nicht mit einer
PositionsNr vergeben sind, markiere
indem ich die Positions-nr mit '999999' angebe.

Das Problem ist das nach eintragen der '999999'
sich die Stückliste immer automatisch aktualisiert, was
immer seine Zeit benötigt.

Frage: Kann man dieses Aktualisieren bis zum Ende
der Funktion unterdrücken, ich dachte an "Update = False"
So einen Schalter habe ich aber nicht gefunden.


Code:

Sub Pos_Nr_nicht_Ballooned()
Dim oDrawDoc As DrawingDocument
Dim oPartList As PartsList
Dim oRow As PartsListRow

If ThisApplication.ActiveDocument.DocumentType = kDrawingDocumentObject Then
    Set oDrawDoc = ThisApplication.ActiveDocument
    Err.Clear
    On Error Resume Next
    Set oPartList = oDrawDoc.ActiveSheet.PartsLists.Item(1)
    If Err.Number <> 0 Then
        MsgBox ("Sie haben keine Stückliste angelegt.")
    End If
    For i = 1 To oPartList.PartsListRows.Count
        Set oRow = oPartList.PartsListRows.Item(i)
        If Not oRow.Ballooned Then
        For j = 1 To oPartList.PartsListColumns.Count
            Set oCell = oRow.Item(j)
            Select Case oPartList.PartsListColumns.Item(j).Title
                Case "Pos."
                    oCell.Value = 999999
                    !!!!!  WARTEN WARTEN  !!!!!
            End Select
        Next
    Next
End If
End Sub


Vielen Dank für eure Hilfe

------------------
Gruß Jörn

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




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

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 27. Jul. 2011 19:41    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 yamaha 10 Unities + Antwort hilfreich

Hi

Ja, die Idee das Aktualisieren aufschieben zu können, fanden die API-Entwickler auch sinnvoll als ich danach gefragt habe. Das war  bei Inventor 2010. Passiert ist bis einschließlich Inventor 2012 - nix.

Teste mal ob ein:

Code:
myDrawDoc.DrawingSettings.DeferUpdates = True

oder

Code:
myInventor.ScreenUpdating = False

etwas bewirkt. Ich fürchte aber nein. Die einzig signifikante Beschleunigung, die ich bisher finden konnte ist ein neues leeres Blatt einfügen, dieses aktivieren und dann die Teileliste bearbeiten. Nach Abschluß zum ursprünglichen Blatt zurückwechseln und das leere Blatt wieder löschen.

------------------
MfG
RK

[Diese Nachricht wurde von rkauskh am 27. Jul. 2011 editiert.]

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

yamaha
Mitglied
Konstrukteur


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

Beiträge: 374
Registriert: 19.05.2004

Autocad/Inventor 2022, Windows 10 Pro 64Bit

erstellt am: 28. Jul. 2011 09:00    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

Hi,

besten Dank für die Tips.
Jedoch

Code:

myDrawDoc.DrawingSettings.DeferUpdates = True
myInventor.ScreenUpdating = False

   
bringen nichts. ScreenUpdating gibt es sowas?

Aber mit dem neuen Blatt einfügen hilft.
Aber das hast du ja selbst schon festgestellt
und ichhab das jetzt auch genutzt.

Code:

ThisApplication.ActiveView.Visible = False
ThisApplication.SilentOperation = True
Set objNewSheet = oDrawDoc.Sheets.Add

Besten Dank nochmal

------------------
Gruß Jörn

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




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

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 28. Jul. 2011 14:38    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 yamaha 10 Unities + Antwort hilfreich

Hi

Ich hatte damals das Problem eine strukturierte Teileliste erweitern zu wollen. Nur unteilbare und gekaufte Komponenten sollten nicht erweitert werden. Nach jedem Erweitern eines Knotens wurde die komplette Teileliste aktualisiert. Dadurch lief das Makro teilweise 40 Minuten. Brian Ekins (Chef-API-Designer) hat das Problem zwar nachvollzogen und mir zugestimmt, daß ein Unterdrücken der Aktualisierung wirklich hilfreich sein könnte, umgesetzt ist es aber noch nicht. Kann aber eigentlich nicht so schwer sein, da der inventoreigene Dialog zum Teileliste bearbeiten ja auch unterdrückt bis man fertig ist. Ich geb die Hoffnung nicht auf. 

------------------
MfG
RK

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