alhambra
Goto Top

Excel 2013: hextodez mit 16 Bit signed Integer?

Hallo zusammen,

ein Gerät (was genau ist hier egal) liefert uns Werte von -32768 bis +32768 als Hex-Wert. Der Hex-Wert ist ein 16-Bit signed Integer-Wert.

Beispiel:
Als Wert kann FC18 geliefert werden. Diesen Wert möchte ich mit Excel 2013 in einen Dezimalwert umrechnen, erhalte dabei aber immer 64536.

Kann ich Excel mitteilen, dass es sich hier um einen 16 Bit signed Integer-Wert handelt, damit es mir richtigerweise den negativen Wert von -1000 ermittelt?

Bei Google bin ich leider nicht fündig geworden.

Schonmal vielen Dank fürs Lesen!

Alhabra

Content-Key: 312093

Url: https://administrator.de/contentid/312093

Printed on: April 19, 2024 at 01:04 o'clock

Member: emeriks
Solution emeriks Aug 08, 2016 at 13:50:09 (UTC)
Goto Top
Hi,
es müsste reichen

if x > 32767 then
  x = x - 65536
end if

E.
Member: alhambra
alhambra Aug 08, 2016 at 13:52:08 (UTC)
Goto Top
Wow, danke für die schnelle Antwort!

So habe ich garnicht gedacht... sollte aber klappen!

Klasse, vielen Dank!

Alhambra
Mitglied: 116301
116301 Aug 08, 2016 at 22:20:40 (UTC)
Goto Top
Hallo zusammen!

oder:
    Dim a As Integer, b As Integer, c As Integer, d As Integer
    
    a = CInt("&H" & Hex(65535))     ' = -1  
    b = CInt("&H" & Hex(32768))     ' = -32768  
    c = CInt("&H" & Hex(1))         ' = +1  
    d = CInt("&H" & Hex(32767))     ' = +32767  
Grüße Dieter