Mathematische Funktionen

Hallo,

irgendwie bin ich zu doof für VBA und seine Hilfe: Ich will die alseits bekannte Funktion Pi() benutzen. Schreibe ich pi(), also klein, wandelt der Editor es in Pi() um - ist also irgendwie bekannt. Starte ich die Prozedur kommt „Sub oder Funktion nicht definiert“. Wie üblich findet man in der Hilfe nichts.
Sin() und Cos() funktionieren!

Was muss ich tun?

Danke
Laika

Hallo laika,

du sagst es selbst: „die allseits bekannte Funktion“. Du kennst sie von Tabellenblättern von Excel. Es ist also eine Tabellenblattfunktion. Es Muss also heißen

WorksheetFunction.Pi()

Genauso wie z.B.

WorksheetFunction.Max

oder

WorksheetFunction.Min

Gruß, Andreas

Moin Andreas,

Es Muss also heißen

WorksheetFunction.Pi()

Ich kann’s mir nicht verkneifen: Sehr Microsoft-logisch! Wie immer „um die Ecke gedacht“, für Normalmenschen nicht nachvollziehbar, zumal in der Hilfe keinerlei Verweis auf Worksheet drinsteht. Schliesslich rufe ich die Hilfe aus VBA auf und nicht aus einem Tabellenblatt.
Sin() usw. sind auch Tabellenblattfunktionen, und die funktionieren ohne Worksheet !

Schönen Sonntag
Laika

Hallo laika,

also wenn ich in der VBA-Hilfe pi eingebe, erhalte ich das hier:
http://www.pic-upload.de/view-24441920/pi1.jpg.html

und wenn ich da den obersten Eintrag anklicke, kommt:
http://www.pic-upload.de/view-24441929/pi2.jpg.html

Die Liste links im Bild zeigt einen Ausschnitt der Tabellenblattfunktionen an, die du über Worksheetfunction… in VBA benutzen kannst. Sin() ist ürigens nicht dabei, weil das wiederum wie du schon sagtest in VBA integriert ist.
Aber ich gebe zu, die Auswahl, was integriert ist und was nicht, scheint recht willkürlich zu sein.

Gruß und schönen Sonntag,
Andreas

Nachtrag
noch mal hallo,

wenn du im VBA-Editor unter Ansicht - Abjektkalalog stöberst, kriegst du auch noch einen ganz schönen Einblick, was wo zu finden ist.

Gruß, Andreas

Hallo Laika

Ich kann’s mir nicht verkneifen:

Wenn Du in der Schule gut aufgepasst hättest, wüsstest Du, dass man Pi mit dem Arcustangens berechnet!

Pi = 4 * Atn(1)

VBA weiss das!

Einen ganz frechen Sonntagsgruss schickt Dir Niclaus

Hallo Andreas nochmal,

… ich gebe zu, die Auswahl, was integriert ist und was
nicht, scheint recht willkürlich zu sein.

Da können wir uns drauf einigen. Die Dokumentation/Hilfe ist eine Sache, die Frage, warum eine so grundlegende Funktion wie Pi() mit „Worksheet“ eingeleitet werden muss … das erschließt sich mir nur, wenn ich annehme, dass da etwas wurstig nach einer „so what“-Mentalität gearbeitet wurde - was man aber nicht nur bei Microsoft findet!

Gruß und schönen Sonntag nochmal
Laika

Hallo Niclaus,

Pi = 4 * Atn(1)

Schön, aber ich wollte einfach wie jeder normale Mensch „Pi()“ schreiben :wink:)
Siehe auch meine Antwort an Andreas.

Einen schönen, leider total verregneten Sonntagsgruss schickt Dir
Laika