Office: (Office 2003) 32 stellige Hexadecimalzahl in Decimalzahl umwandeln

Helfe beim Thema 32 stellige Hexadecimalzahl in Decimalzahl umwandeln in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo alle mit einander, ich habe folgendes Problem: eine 32 stellige Hexa Zahl in eine 40 stellige Decimal Zahl umzuwandeln. Mit der Cdec()... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Eva08, 12. Dezember 2009.

  1. 32 stellige Hexadecimalzahl in Decimalzahl umwandeln


    Hallo alle mit einander,

    ich habe folgendes Problem:

    eine 32 stellige Hexa Zahl in eine 40 stellige Decimal Zahl umzuwandeln.

    Mit der Cdec() funktionieren nur 16 stellen Hexa, danach erhalte ich einen Überlauf.

    Gibt es überhaupt einen Variablentyp der 40 stellen anzeigen kann? Cdec() liefert ja einen Variant zurück. Wobei mir aber nur 20 stellen angezeigt werden, die 1te ist mit Minus versehen.

    Zur Erklärung:
    Ich muss eine Zeichenkette mit MD5-Hash kodieren. Diese gibt mir eine 32stellige Hexadecimal-Zahl zurück. Daraus muss eine 40stellige Decimal-Zahl gebildet werden.

    Über eine Antwort würde ich mich sehr freuen.

    :)
     
  2. hier ist ein Link mit .net Code, um mit MD5 zu verschlüsseln. Daraus kannst du eine .net dll erstellen.
    Diese dll kann man in VBA einbinden.
    Eine Anleitung, wie man .net dlls in VBA verwendet gibt es hier
     
    Großer Meister, 14. Dezember 2009
    #2
  3. Hallo Großer Meister,

    die md5 habe ich schon eingebunden, das klappt alles wunderbar. Ich muss nur aus dem Resultat ( 32stellen Hexa) eine 40 stellige Decimalzahl bilden.

    Das habe ich mit der Funktion Cdec() ausprobiert. Diese kann aber nur 16stellen Hexa umwandeln.

    Daher meine Frage, ob es vielleicht noch etwas anderes gibt.
    Zumal der Variant-Typ nur 28 Dezimalstellen anzeigt. Oder?

    Vielen Dank
     
  4. FW
    FW

    32 stellige Hexadecimalzahl in Decimalzahl umwandeln

    ... der Variant-Typ ist kein eigenständiger Datentyp, sondern gibt immer einen der Grunddatentypen wieder! Insofern hat dieser Datentyp auch keine eigene Genauigkeit, sondern die Genauigkeit des Datentypen, den er gerade annimmt.
    In VB gibt es keinen numerischen Datentypen, der eine Genauigkeit von 40 Stellen besitzt, daher wird es Dir auch nicht so ohne weiteres gelingen, eine solche Dezimalzahl anzuzeigen...
     
  5. Hallo FW,

    wie kann ich dieses Problem lösen?

    Kann ich überhaupt mit 40 stellen rechnen?
     
  6. FW
    FW
    ... Du könntest die Hex-Ziffern selbst in einen dezimalen String umwandeln: Code:
    Die Funktionen "IntAddition", "IntMultiply" und "TrimZeros" sind hier entliehen.
    So liefert Hex2DecStr("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF") den Wert 340282366920938463463374607431768211455...
     
  7. Hallo FW,

    vielen Dank. Habe den Code ausprobiert, funktioniert auch. Allerdings habe ich nur 39 stellen erhalten. Vielleicht kommt ja auch nicht mehr heraus. Hab das nicht mit dem Taschenrechner nachgerechnet. :-)

    Gruß und Kuß
     
  8. FW
    FW

    32 stellige Hexadecimalzahl in Decimalzahl umwandeln

    ... dann füllst'e das Ergebnis einfach linksbündig mit 0 auf...
     
  9. Hallo FW,

    ich habe die Function mit folgendem Hexa-Wert getestet
    "15819a364dbe86b956083bbd1992857f"

    bekomme folgendes Ergebnis
    "0032877080217296820935182367670537885777"

    in dem Beispiel steht als Ergebnis
    "0028586721999694642100505878794595370367"

    (führende Nullen sind aufgefüllt)

    nun weiß ich nicht, welches richtig ist. Kannst du das testen? Der Hexa-Wert ist richtig, den bekomme ich mit meiner Function auch hin.

    Leider ist das sehr wichtig. Ist für die Bedruckung / Abrechnung mit den Krankenkassen.

    Vielen Dank.
     
  10. FW
    FW
    ... ich habe keine Rechner, die mit 40-stelliger Genauigkeit arbeiten! Deshalb würde ich es mit kleinen, nachvollziehbaren Testwerten versuchen, um eine "statistische Sicherheit" zu bekommen...
     
  11. Hallo FW,

    da hätte ich auch selbst drauf kommen können. So, getestet habe ich es mit Hexa 7D0 = 2000, die Funktion rechnet 215.

    Jetzt teste ich noch mal in Einzelschritten.
     
  12. FW
    FW
    Hallo Eva08,
    die Funktion "Hex2DecStr" muss so aussehen: Code:
    Dann sollte es auch klappen!

    S. a. diesen Beitrag...
     
  13. 32 stellige Hexadecimalzahl in Decimalzahl umwandeln

    Hallo FW,

    das hat wunderbar geklappt. Du hast mich vor weitern schlaflosen Nächten bewahrt.

    Vielen Dank
     
  14. Hallo Eva,
    kannst du vielleicht deine MDB ins Netz stellen, ich stehe vor einem ähnlichen Problem und ich wollte mir als nicht so versierter Access-Nutzer eine Menge Zeit sparen.
    der hausdrachen
     
    Hausdrache, 12. Januar 2010
    #14
Thema:

32 stellige Hexadecimalzahl in Decimalzahl umwandeln

Die Seite wird geladen...
  1. 32 stellige Hexadecimalzahl in Decimalzahl umwandeln - Similar Threads - stellige Hexadecimalzahl Decimalzahl

  2. Zahl entfernen (4-5 stellig)

    in Microsoft Excel Hilfe
    Zahl entfernen (4-5 stellig): Hallo, ich habe in einer Zelle eine Zahlen-Buchstabenkombination, z.B. 500AOL90 1780AOL 900AOL90AOL45 in einer weiteren Zelle hab ich bereits die erste Zahlenfolge extrahiert, also 500 1780 900...
  3. Alter per Formel errechnen, Ausgabe immer 2 Stellig

    in Microsoft Excel Hilfe
    Alter per Formel errechnen, Ausgabe immer 2 Stellig: Hallo Leute, ich bin am Verzweifeln, ich habe in meiner Liste eine Formel, mit der ich das Alter der Personen errechne: =DATEDIF(C3;DATUM(JAHR(HEUTE());12;31);"y")&"-j" Da ich die Excel Datei...
  4. Excel Problem: Filterung nach 5-stelligen Zahlen

    in Microsoft Excel Hilfe
    Excel Problem: Filterung nach 5-stelligen Zahlen: Hallo liebes Forum, ich habe derzeit ein Problem auf Arbeit. Wir verwenden ein Warenwirtschaftssystem. In diesem Warenwirtschaftssystem sind alle unsere Artikel, Einkäufe, Verkäufe, Statistiken,...
  5. Zahl in Zelle muss immer 4 stellig sein

    in Microsoft Excel Hilfe
    Zahl in Zelle muss immer 4 stellig sein: Hallo an alle, ich habe folgendes Problem: Ich habe eine Spalte mit vielen Nummern. in jeder Zelle muss eine 4stellige Zahl stehen. In einigen Zellen sind schon 4 stellige Zahlen enthalten in...
  6. 9-stellige Zahl aus Datenmischmasch extrahieren

    in Microsoft Excel Hilfe
    9-stellige Zahl aus Datenmischmasch extrahieren: Hallo, Version 2013 Aufgabenstellung: in Spalte A sind aus einer Textdatei Daten importiert worden, die Buchstaben und Zahlen sowie nur eine 9-stellige (durchgehend) Zahl enhalten. In Spalte B...
  7. nur 5-stellige Zahl in TextBox zulasse

    in Microsoft Excel Hilfe
    nur 5-stellige Zahl in TextBox zulasse: Hallo, hab folgendes Problem (Excel 2010): Ich möchte in einer Userform eine TextBox mit einer 5-stelligen Zahl (bzw. in einer zweite TextBox eine 2-stellige Zahl) vom Anwender befüllen lassen...
  8. Datentyp und Feldgröße (!) für 10 stellige Kontonummer

    in Microsoft Access Hilfe
    Datentyp und Feldgröße (!) für 10 stellige Kontonummer: Tach, was würdet ihr denn empfehlen/nutzen um eine zehnstellige Kontonummer abzuspeichern. Long Integer scheint bei ca 2,4 Mrd aufzuhören, d.h. 2.400.000.000 unsere Kontonummern gehen jedoch bis...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden