benutzerdefinierte funktion

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: benutzerdefinierte funktion

[gelöst]:benutzerdefinierte funktion

von kannenklaus » Mo, 03.04.2006 16:05

hallo michael,

kleine dinge große wirkung. bei der deklaration von sehrhoch haben die klammern gefehlt.

danke für deine hilfe

grüße klaus

von ykcim » Mo, 03.04.2006 15:54

Du hast wahrscheinlich Option Explicit eingestellt.
Dann sollte es so gehen

Code: Alles auswählen

    dim sehrhoch() as string
    dim i as integer
    Sehrhoch = Array("Fahrbahn","Damm","Einschnitt","Bankett","Brücke_ kleiner 50 m")
......
mfg
Michael

von kannenklaus » Mo, 03.04.2006 14:58

hallo michael,

bei der folg. codezeile bekomme ich die fehlermeldung "basic laufzeifehler variable nicht definiert."

Code: Alles auswählen

    Sehrhoch = Array("Fahrbahn","Damm","Einschnitt","Bankett","Brücke kleiner 50 m")
habe den array schon mit dim und variant bzw. string deklariert - ohne erfolg.

grüße

klaus

von ykcim » Mo, 03.04.2006 12:35

Code: Alles auswählen

Function B87Fl(konMerkmal As String) As String
    Sehrhoch = Array("Fahrbahn","Damm","Einschnitt","Bankett","Brücke kleiner 50 m")
    B87Fl = "-"
    For i=0 to ubound(sehrhoch) 
      if konMerkmal=sehrhoch(i) then B87Fl = "sehr hoch"
    next  
    If konMerkmal = "Brücke größer 50 m" Then B87Fl = "hoch"
End Function
mfg
Michael

benutzerdefinierte funktion

von kannenklaus » Mo, 03.04.2006 12:00

hallo zusammen.

für ein einfaches bewertungsschema habe ich eine benutzerdefinierte funktion geschrieben. argumente die nicht gleich

- fahrbahn,
- damm,
- einschnitt,
- bankett,
- brücke größer 50 m bzw.
- brücke kleiner 50 m

sind, sollen nur den wert "-" bekommen. hier stellt sich mir die frage, ob das im code nicht kürzer geht wie im folgenden beispiel:

Code: Alles auswählen

Function B87Fl(konMerkmal As String) As String
    If konMerkmal = "Fahrbahn" Then
    B87Fl = "sehr hoch"
    ElseIf konMerkmal = "Damm" Then
    B87Fl = "sehr hoch"
    ElseIf konMerkmal = "Einschnitt" Then
    B87Fl = "sehr hoch"
     ElseIf konMerkmal = "Bankett" Then
    B87Fl = "sehr hoch"
    ElseIf konMerkmal = "Brücke kleiner 50 m" Then
    B87Fl = "sehr hoch"
        ElseIf konMerkmal = "Brücke größer 50 m" Then
    B87Fl = "hoch"
    ElseIf konMerkmal <> "Fahrbahn" or konMerkmal <> "Damm" OR konMerkmal <> "Einschnitt" _
    OR konMerkmal <> "Bankett" OR konMerkmal <> "Brücke kleiner 50 m" OR konMerkmal <> "Brücke größer 50 m" then
    B87Fl = "-" 
    End If
End Function
freue mich auf eine antwort

grüße

klaus

Nach oben