WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   5 Zeilen zur Verzweiflung....... (http://www.wcm.at/forum/showthread.php?t=19569)

Elac7 20.04.2001 01:43

Hi!

Kann mir jemand sagen warum dieser Mist nicht funktioniert???

Function LeerZelle(Spalte As Long) As Variant
Dim Erg As Variant
Set Erg = Sheets("Tabelle1").Columns(Spalte).Find(Empty)
LeerZelle = Erg.Row
End Function


Im Einzelschrittmodus ist alles korrekt nur in einer Zelle nicht mehr - nur mehr Fehlermeldung #WERT!

mfg Elac7

Who-T 20.04.2001 11:24

ich mein ich kenn mich ehrlich gesagt nicht wirklich aus, was das für eine sprache ist aber haben funktionen nicht normal rückgabewerte?

irgendwas mit return oder so?

el torro 20.04.2001 12:58

hallo elac7,

also um der ersten antwort willen würde ich meinen es kann sich nur um vba in excel handeln, schätze ich liege da nicht so falsch....

was für einen effekt willst du mit diesen zeilen denn erreichen?


valo 20.04.2001 18:23

so wie ich das sehe versucht er irgendwas zu finden oder so, aba wenn er sagen würde was er damit erreichen wil wäre ihm schon mal mehr geholfen

Elac7 21.04.2001 16:47

Hi!

Sorry - hätte mein Problem besser definieren sollen......

Es handelt sich tatsächlich um VBA in Excel! Ich wollte das Excel eine Spalte von oben nach unten durchsucht und mir sagt welches die erste freie Zelle ist....

@Who-T: Rückgabe mit return oder so ist nicht notwendig - weil - der Rückgabewert wird im Functionname übergeben in der Zeile wo LeerZelle = Erg.row steht!

Soll im Endeffekt ein AddIn werden - hier ein Beispiel für ein AddIn zur Berechnung von Ostern:

Function Ostern(SuchJahr As Integer) As Date
Dim n, a, u_b, m, q, w, o, p As Integer
n = SuchJahr - 1900
a = n - Fix(n / 19) * 19
u_b = Fix((7 * a + 1) / 19)
m = (11 * a + 4 - u_b) - Fix((11 * a + 4 - u_b) / 29) * 29
q = Fix(n / 4)
w = (n + q + 31 - m) - Fix((n + q + 31 - m) / 7) * 7
o = 25 - m - w
p = 4
If o <= 0 Then
p = 3
o = o + 31
End If
Ostern = DateSerial(SuchJahr, p, o)
End Function

Also: Neue Datei erstellen in Extras/Makro/Visual Basic-Editor aufrufen Einfügen/Modul die Zeilen oben einfügen das ganze als Ostern.xla abspeichern Extras Add-Ins-Manager diese Ostern.xla suchen und einbinden. Ab jetzt ist in Excel ein neuer Befehl vorhanden nämlich: in einer beliebigen Zelle könnt ihr eintippen =Ostern(Jahr) die Zelle als Datum formatieren.......

Danke für eure Teilnahme an meinem Problem

mfg Elac7


Alle Zeitangaben in WEZ +2. Es ist jetzt 08:41 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag