Hallo Oliver,
[email protected] schrieb:
Hallo Liste,
ich spiele hier gerade mit Array in OOo-Basic (3.0.0) herum. Dabei fällt
mir auf, dass immer die Zählung bei 0 beginnt, auch wenn ich das Array
anders definiere, z.B. mit
dim a(1 to 7)
a = array ( "Montag" , "Dienstag" , "Mittwoch" , "Donnerstag" , "Freitag"
, "Samstag" , "Sonntag")
Dann ergibt a(1) den "Dienstag". Daran ändert sich auch nichts, wenn ich
Option Base 1
setze zu Beginn des Moduls. Ist das ein Fehler oder habe ich da etwas
übersehen?
Ich gehöre hier nicht zu den "Basic-Gurus", deshalb nimm meine Antwort
mal mit Vorsicht.
Du vermischt zwei Konzepte, einmal die "echten" Felder und die Sequenzen.
Mit
dim a(1 to 7) as string erzeugst du ein echtes Feld. Dieses könntest
dann mit
a(1)="Montag"
a(2)="Dienstag"
usw
füllen. Der Indexbereich geht hier dann von 1 bis 7
Mit
Array(
"Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag","Sonntag")
erzeugst du eine Sequenz. Der Indexbereich fängt dann immer bei 0 an.
Die zugehörige Vereinbarung ist dann
dim a as variant
Die Festlegung
Option Base 1
wirkt nur auf "echte" Felder und zwar solche, die mit der Anzahl und
nicht dem Indexbereich vereinbart werden. Möglich wäre also auch
Option Base 1
und dann später
dim a(6) as string
um einen Indexbereich von 1 bis 7 zu erhalten.
Wohin gegen mit 'Option Base 0' durch 'dim a(6) as string' der
Indexbereich von 0 bis 6 erzeugt würde.
mfG
Regina
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]