Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Funktion mit mehrere Parametern

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:  Funktion mit mehrere Parametern (645 mal gelesen)
hklein06
Mitglied
Entwicklung Fahrwerk


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

Beiträge: 50
Registriert: 17.03.2006

CATIA V5 R14 HF-35
[ RS6000 AIX 5.3-ML04 ]

erstellt am: 23. Mrz. 2006 15:29    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 möchte einer funktion mehrere Parameter übergeben. Leider geht es nicht so wie beschrieben:

Function Func_ErrorMsg(Msg_Num As Integer, Msg_String As String) As Integer
MsgBox "Fehler "&Msg_Num&": "&Msg_String
End Function

Der Aufruf

Func_ErrorMsg (2)      ---  "Wrong number..." (OK, ist ja auch Sinn der Sache)

Func_ErrorMsg (2, "Test") --- läuft in den Fehler "Cannot use parens when calling a Sub"


Habe leider kein ausführliches VB Buch zur Hand. Ind er normalen CATIA Beschreibung steht, dass es so gehen sollte...

Was mache ich denn falsch? Danke im Voraus

Viele Grüße,

Holger

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

yvi5555
Mitglied



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

Beiträge: 19
Registriert: 22.02.2006

erstellt am: 23. Mrz. 2006 16: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 hklein06 10 Unities + Antwort hilfreich

Hallo Holger,

ich habe leider auch noch nicht viel Erfahrung mit Funktionen, aber ich stell dir hier mal das Beispiel aus dem Buch von Dieter R. Ziethen rein.
Vielleicht bringt dich das weiter.

Viele Grüße
Yvonne


Beispiel:
'---------------------------------------------
Sub CATMain ()

  Dim Box
  Box = MsgBox (Multiplikation (1, 3))

End Sub


Function Multiplikation (I, II As Integer) As Integer

  Multiplikation = I * II

End Function

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

AlexE78
Mitglied
Ing.


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

Beiträge: 49
Registriert: 29.08.2005

erstellt am: 23. Mrz. 2006 16:15    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 hklein06 10 Unities + Antwort hilfreich

Hallo hklein06,

Eine "Function" muß einen Wert zurückgeben. Dieser wird mit
FunctionName=Wert zugewiesen.

In deinem Beispiel ist aber die Verwendung einer "Sub" sinnvoller.

Und da du den (nicht existierenden) Rückgabewert deiner Funktion nicht abfragst, wird sie als Sub interpretiert... und Subs werden ohne Klammern aufgerufen.


mfg Alex

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

hklein06
Mitglied
Entwicklung Fahrwerk


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

Beiträge: 50
Registriert: 17.03.2006

CATIA V5 R14 HF-35
[ RS6000 AIX 5.3-ML04 ]

erstellt am: 24. Mrz. 2006 10:19    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 Alex,

danke für den Hinweis. Das mit meiner Funktion war korrekt, allerdings lasse ich nicht immer den Rückgabewert abfragen. Komisch ist nur, dass es mit einem Parameter funktioniert, mit zwei Parametern nicht mehr. Ich habe jetzt mein Script so angepasst, dass der Rückgabewert abgefragt wird.

Viele Grüße,

Holger


Funktioniert:

Function Func_ErrorMsg(Msg_Num As Integer) As Integer
MsgBox "Fehler "&Msg_Num
End Function

Func_ErrorMsg (2)


Funktioniert nicht:

Function Func_ErrorMsg(Msg_Num As Integer, Msg_String As String) As Integer
MsgBox "Fehler "&Msg_Num&": "&Msg_String
End Function

Func_ErrorMsg (2, "Test")

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

Günter K.
Mitglied



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

Beiträge: 21
Registriert: 16.08.2004

erstellt am: 24. Mrz. 2006 10:44    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 hklein06 10 Unities + Antwort hilfreich

Hallo Holger,

hast du mal versucht beim Funktionsaufruf die Klammern wegzulassen, also:

Func_ErrorMsg 2, "Test"

Gruß, Günter

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

hklein06
Mitglied
Entwicklung Fahrwerk


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

Beiträge: 50
Registriert: 17.03.2006

CATIA V5 R14 HF-35
[ RS6000 AIX 5.3-ML04 ]

erstellt am: 24. Mrz. 2006 10:47    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 Günter,

nein, habe ich nicht. Ich lese jetzt den Rückgabewert aus und alles funktioniert. Mich hat nur das Verhalten bei einem oder mehreren Parametern ziemlich irritiert.

Viele Grüße,

Holger

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