Programmierung unter AOO/LO (StarBasic, Python, Java, ...)
Moderator: Moderatoren
kannenklaus
*****
Beiträge: 319 Registriert: Mi, 14.12.2005 08:08
Wohnort: freising - oder dort, wo das bier herkommt
Beitrag
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
ykcim
*****
Beiträge: 324 Registriert: Di, 29.07.2003 15:22
Wohnort: Neu-Isenburg
Kontaktdaten:
Beitrag
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
kannenklaus
*****
Beiträge: 319 Registriert: Mi, 14.12.2005 08:08
Wohnort: freising - oder dort, wo das bier herkommt
Beitrag
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
ykcim
*****
Beiträge: 324 Registriert: Di, 29.07.2003 15:22
Wohnort: Neu-Isenburg
Kontaktdaten:
Beitrag
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
Zuletzt geändert von
ykcim am Mo, 03.04.2006 16:06, insgesamt 1-mal geändert.
kannenklaus
*****
Beiträge: 319 Registriert: Mi, 14.12.2005 08:08
Wohnort: freising - oder dort, wo das bier herkommt
Beitrag
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