VBA-Frage aus 2 Bytes eine Intergerzahl machen.

Antworten
Benutzeravatar
frankyfly
Beiträge: 12239
Registriert: 09.07.2006 20:47:03

#1 VBA-Frage aus 2 Bytes eine Intergerzahl machen.

Beitrag von frankyfly »

Ich habe mit dem minilogger, Bzw. genaiuer mit der Auswetesoftware ein Problem. Da der minilogger ja leider nicht mehr in der Aktuellen LogView version unterstützt wird und die Alte nicht gerade den höchsten Kompfort bietet möchte ich den minilogger aus Excel heraus auslesen. Es gibt da auch schon einen netten Ansatz (basierend auf der "Port.dll" ) den ich "nur noch" aufbohren muss.

Jetzt aber zu meiner Herausforderung.
Dieser Ansatz ist für die erste Software-Version des Loggers gedacht, aber in der neuen werden einige Werte als Integerzahlen abgelegt (z.B. die EE-Prom Größe) und Excel liest nur das Low-Byte aus. Soweit kein Problem, aber wie bekomme ich Jetzt aus meinen 2 Bytes (ich kann nur byteweise ausleesen) eine Integerzahl zum weiterverarbeiten? in C Wäre jetzt mein ansatz gewesen mit Pointern zu arbeiten, aber das kann ich ja in VBA vergessen, soweit ich weiß.
Muss ich jetzt hingehen und die Bits "manuell" umbauen oder gibt es eine geniale Funktion die das für mich erledigt?

edit. ich glaube ich habe selber eine Idee:

Code: Alles auswählen

dim Zahl_Hi As Byte
dim Zahl_Low As Byte
dim Zahl_int As Integer

Zahl_int=Zahl_Hi*256 +Zahl_Low
jetzt muss ich nurnoch testen ob das klappt was ich mir da gerade unter der Dusche Ausgedacht habe :oops: :lol:
Benutzeravatar
obbl
Beiträge: 237
Registriert: 15.08.2008 14:15:30
Kontaktdaten:

#2 Re: VBA-Frage aus 2 Bytes eine Intergerzahl machen.

Beitrag von obbl »

Hi,

wie wärs einfach mit

Code: Alles auswählen

integer_zahl = hi_byte * (0x1000 oder dezimal 65536) + lo_byte


oder hab ich Dich falsch verstanden?

Gruss
Martin
________________
Mini Titan: Original Motor, Jazz 40, 12er Ritzel, 3xS3107, GY-401+FS61BB, Maniacs
T-Rex 600 GF: Original Motor/Regler/Ritzel, 3xS3152, GY-401+S9254, Blattschmied X-pert 600
MC-22 Funke mit 2,4GHz Spektrum
Benutzeravatar
frankyfly
Beiträge: 12239
Registriert: 09.07.2006 20:47:03

#3 Re: VBA-Frage aus 2 Bytes eine Intergerzahl machen.

Beitrag von frankyfly »

Zwei dumme ein Gedanke
obbl hat geschrieben:(0x1000 oder dezimal 65536)
ist das nicht zu viel ? ich meine , weil 1 Byte ja nur 0-255 (dezimal) aufnehmen kann.
Benutzeravatar
obbl
Beiträge: 237
Registriert: 15.08.2008 14:15:30
Kontaktdaten:

#4 Re: VBA-Frage aus 2 Bytes eine Intergerzahl machen.

Beitrag von obbl »

frankyfly hat geschrieben:ist das nicht zu viel ?
Selbstverständlich hast Du Recht, es muß heißen

Code: Alles auswählen

integer_zahl = hi_byte * 256 + lo_byte
:drunken:
________________
Mini Titan: Original Motor, Jazz 40, 12er Ritzel, 3xS3107, GY-401+FS61BB, Maniacs
T-Rex 600 GF: Original Motor/Regler/Ritzel, 3xS3152, GY-401+S9254, Blattschmied X-pert 600
MC-22 Funke mit 2,4GHz Spektrum
Antworten

Zurück zu „Klönschnack“