Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Lookup
TobiasBlome
29.06.2008, 16:09
Hallo,
wie kann man bei dem Befehl "Lookup" die Tabelle über eine Variable auswählen?
z.b.
dim Tabelle as Byte
If ... then
Tabelle = 1
Else
Tabelle =2
End if
W1 = Lookup(position , Tabelle)
1:
Data 1; 1 usw....
Data 4; 4 usw....
2:
Data 7; 8 usw....
Data 3; 5 usw....
Die Variable Position funktioniert wunderbar ;-)
Die Variable Tabelle geht leider nicht.
Hat jemand dafür eine Erklärung?
Tobias
linux_80
29.06.2008, 16:49
Hallo,
Du könntest das Lookup gleich in die If-Abfrage bauen.
Es ist anscheinend nicht vorgesehen an dieser Stelle eine Variable anzugeben :-k
...nicht vorgesehen an dieser Stelle eine Variable anzugeben ..
In der Tat. da geht nur ein direkter "Label"
Brave Möglichkeit: Wie Linux sagte, direkt im IF
Trickreicher
DIM tabelle AS WORD
if ,,, then
tabelle = loadlabel(Tabelle1)
else
tabelle = loadlabel(Tabelle2)
end if
' --------------- nachgemachter lookup
varia = tabelle + position
wert = CPEEK(varia)
TobiasBlome
29.06.2008, 20:19
Hallo,
mit der If Version ist mir das zuviel Schreibarbeit...(zuviele Abfragen)
If Led_flag = 1 Then
Reset Led_flag
Incr Zeile
If Zeile = 20 Then Zeile = 0 'wenn die 20 Zeilen durch sind geht's von vorne los
Position = Zeile * 10
W1 = Lookup(position , 1)
Incr Position
W2 = Lookup(position , 1)
Incr Position
W3 = Lookup(position , 1)
Incr Position
W4 = Lookup(position , 1)
Incr Position
W5 = Lookup(position , 1)
Incr Position
W6 = Lookup(position , 1)
Incr Position
W7 = Lookup(position , 1)
Incr Position
W8 = Lookup(position , 1)
Incr Position
W9 = Lookup(position , 1)
Incr Position
W10 = Lookup(position , 1)
End If
@Robert das muss ich mir noch mal ansehen - ich hab´s noch nicht verstanden...
' --------------- nachgemachter lookup
varia = tabelle + position
wert = CPEEK(varia)
Naja, "Loadlabel" liefert die Anfanges-(byte)Adresse von dieser oder jener Tabelle.
"+ position" ergibt dann die adresse der n-ten Bytes in der Tabelle
und mit CPEEK() kann man das Byte dort lesen
Im Grunde ist das genau das, was Lookup() macht (wenn es um Bytes geht)
TobiasBlome
30.06.2008, 17:36
Ach so...
dann werd ich das doch mal so programmieren!
Danke!
Tobias
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.