Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Ausführen eines Befehls bei nochmaligem Drücken eines CmdButtons

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
Autor Thema:  Ausführen eines Befehls bei nochmaligem Drücken eines CmdButtons (336 mal gelesen)
LM012345
Mitglied


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

Beiträge: 7
Registriert: 08.01.2019

CATIA V5 R21

erstellt am: 08. Jan. 2019 11: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

Hallo zusammen, ich habe ein Makro geschrieben, um eine CATIA Tabelle auf ein Zeichnungssheet zu bekommen. Dabei habe ich die Userform Funktion mit VBA genutzt. Ich würde aber gerne die Funktion mit einbringen, dass immer eine Zeile zu der Tabelle hinzugefügt wird, wenn der Button "Zeile hinzufügen" gedrückt wird. Bisher wird dann zwar beim ersten Drücken eine Zeile hinzugefügt, bei nochmaligem Drücken aber nicht mehr.

Viele Grüße,
Leila

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 08. Jan. 2019 11:46    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 LM012345 10 Unities + Antwort hilfreich

Servus

Willkommen in Forum.
Wie sieht denn dein Code aus? Wie fügst du beim ersten mal eine Zeile hinzu?
Du kennst die Methode AddRow?

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

LM012345
Mitglied


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

Beiträge: 7
Registriert: 08.01.2019

CATIA V5 R21

erstellt am: 08. Jan. 2019 11:53    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 Bernd, danke dir, ja, ich kenne die Funktion AddRow, mit der arbeite ich auch hier. Mein Code sieht so aus:


Public Sub Cmd_ZeileHinzufuegen_Click()

    Dim CATIA As Object
    Set CATIA = GetObject(, "CATIA.Application")

    Dim MyDrawingDoc As DrawingDocument
    Set MyDrawingDoc = CATIA.ActiveDocument

    Dim MyDrawingSheets As DrawingSheets
    Set MyDrawingSheets = MyDrawingDoc.Sheets

    Dim MyDrawingSheet As DrawingSheet
    Set MyDrawingSheet = MyDrawingSheets.ActiveSheet

    Dim MyDrawingViews As DrawingViews
    Set MyDrawingViews = MyDrawingSheet.Views

    Dim drwviews As DrawingViews
    Set drwviews = MyDrawingSheet.Views
    drwviews.Item("Background View").Activate
   
    Dim DrwTable As DrawingTable
   
    Set DrwTable = MyDrawingViews.ActiveView.Tables.Add(10, 200, 2, 4, 20, 50)
   
        DrwTable.AddRow (1)
   
 
   
   
End Sub

Das Problem wird sein, dass wenn man den Button ein weiteres Mal drückt, die tabelle nochmal gezeichnet wird und dann die Zeile auch wieder dahinter angehängt wird. Das ganze wird also überschrieben. Gibt es ggf eine Möglichkeit das ganze mit ener Schleife zu lösen?

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 08. Jan. 2019 12: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 Nur für LM012345 10 Unities + Antwort hilfreich

Servus

Du musst auswerten ob es schon eine bzw deine Tabelle gibt. zB (Annahme die erste Tabelle ist die gesuchte) (Code ist nicht getestet)

Code:

Dim DrwTable As DrawingTable

Set drwviews = MyDrawingSheet.Views
Set MyDrwView = drwviews.item(2)

if MyDrwView.Tables.Count <> 0 then
    Set DrwTable = MyDrwView.Tables.item(1)
    DrwTable.AddRow(0)
else
    Set DrwTable = MyDrwView.Tables.Add(10, 200, 2, 4, 20, 50)
    DrwTable.AddRow(1)
end if


Versuch den Code, den dir vermutlich der Makrorekorder geliefert hat, nachzuvollziehen.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

LM012345
Mitglied


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

Beiträge: 7
Registriert: 08.01.2019

CATIA V5 R21

erstellt am: 08. Jan. 2019 13: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

Hi Bernd, vielen Dank schonmal, das hilft mir enorm weiter. Jetzt wird allerdings der Tabelle sowohl oben, als auch unten eine Zeile hiinzugefügt, wenn man auf Zeile hinzufügen klickt. Wie kann ich das beheben?

---edit----

Hi Bernd, schon gut, das war ein Fehler meinerseits. Es funktioniert wunderbar, vielen Dank nochmal!

[Diese Nachricht wurde von LM012345 am 08. Jan. 2019 editiert.]

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 08. Jan. 2019 13:14    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 LM012345 10 Unities + Antwort hilfreich

Servus

Wird bei dir im Code zweimal AddRow ausgeführt?

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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



Elektroingenieur Energieanlagen (m/w/d)
Die besten Köpfe für die unterschiedlichsten Aufgaben zu finden sowie Menschen und Technologien zu verbinden, und zwar täglich aufs Neue - dafür schätzen unsere Kunden FERCHAU. Unterstütze uns: als ambitionierte:r Kolleg:in, der:die wie wir Technologien auf die nächste Stufe bringen möchte. Wir realisieren spannende Projekte für namhafte Kunden in allen Technologiebereichen und für alle Branchen und überzeugen täglich mit fundierter Expertise und fachlichem Know-how....
Anzeige ansehenElektrotechnik, Elektronik
LM012345
Mitglied


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

Beiträge: 7
Registriert: 08.01.2019

CATIA V5 R21

erstellt am: 08. Jan. 2019 13:17    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

Ganz genau, das war das Problem.

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