<head>
<style>
<!--
p.MsoNormal
{mso-style-parent:"";
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri","sans-serif";
margin-left:0in; margin-right:0in; margin-top:0in}
-->
</style>
</head>
<p class="MsoNormal">I gotta a table that contain IP Addresses in <b>Hexadecimal
</b>format; I want to change it to <b>IP dotted quad</b></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">The following formula does it, BUT it has an issue with
last octet</p>
<p class="MsoNormal"><b>For Ex:</b> the below formula change <b>
<span style="background: aqua">0A0D66DA</span></b> to <b>
<span style="background: yellow">10.13.102.10</span></b> while it should change
it to <b><span style="background: lime">10.13.102.218</span></b></p>
<p class="MsoNormal">
-
</p>
<p class="MsoNormal"><span style="background: silver">Local stringvar hex_in :=;</span></p>
<p class="MsoNormal"><span style="background: silver">if len(hex_in)>0 then</span></p>
<p class="MsoNormal"><span style="background: silver">//Local stringvar hex_val
:=right(hex_in,len(hex_in)-2);</span></p>
<p class="MsoNormal"><span style="background: silver">Local stringvar hex_val;</span></p>
<p class="MsoNormal"><span style="background: silver">Local NumberVar strLen :=
Length (hex_in);</span></p>
<p class="MsoNormal"><span style="background: silver">Local NumberVar i;</span></p>
<p class="MsoNormal"><span style="background: silver">Local NumberVar j;</span></p>
<p class="MsoNormal"><span style="background: silver">Local NumberVar result;</span></p>
<p class="MsoNormal"><span style="background: silver">Local stringvar Array
fresult;</span></p>
<p class="MsoNormal"><span style="background: silver">Local stringvar
stringValue;</span></p>
<p class="MsoNormal"><span style="background: silver">ReDim fresult[4];</span></p>
<p class="MsoNormal"><span style="background: silver">local numbervar skip:=0;</span></p>
<p class="MsoNormal"><span style="background: silver"> </span></p>
<p class="MsoNormal"><span style="background: silver">For j := 1 To strLen/2 Do</span></p>
<p class="MsoNormal"><span style="background: silver">(</span></p>
<p class="MsoNormal"><span style="background: silver">hex_val :=
mid(hex_in,j+skip,2);</span></p>
<p class="MsoNormal"><span style="background: silver">skip:=skip+1;</span></p>
<p class="MsoNormal"><span style="background: silver">For i := 0 To strLen-1 Do</span></p>
<p class="MsoNormal"><span style="background: silver">(</span></p>
<p class="MsoNormal"><span style="background: silver">select (mid
(hex_val,i+1,2))</span></p>
<p class="MsoNormal"><span style="background: silver">case "a" : result :=
result10*(16 ^ (len(hex_val)-(i1)))</span></p>
<p class="MsoNormal"><span style="background: silver">case "b" : result :=
result11*(16 ^ (len(hex_val)-(i1)))</span></p>
<p class="MsoNormal"><span style="background: silver">case "c" : result :=
result12*(16 ^ (len(hex_val)-(i1)))</span></p>
<p class="MsoNormal"><span style="background: silver">case "d" : result :=
result13*(16 ^ (len(hex_val)-(i1)))</span></p>
<p class="MsoNormal"><span style="background: silver">case "e" : result :=
result14*(16 ^ (len(hex_val)-(i1)))</span></p>
<p class="MsoNormal"><span style="background: silver">case "f" : result :=
result15*(16 ^ (len(hex_val)-(i1)))</span></p>
<p class="MsoNormal"><span style="background: silver">default : result :=
resultval(mid (hex_val,i1,1))*(16 ^ (len(hex_val)-(i+1)));</span></p>
<p class="MsoNormal"><span style="background: silver">);</span></p>
<p class="MsoNormal"><span style="background: silver">fresult[j] :=
ToText(result,0);</span></p>
<p class="MsoNormal"><span style="background: silver">result:=0;</span></p>
<p class="MsoNormal"><span style="background: silver">);</span></p>
<p class="MsoNormal"><span style="background: silver">stringValue:=
fresult[1]"."fresult[2]"."fresult[3]"."fresult[4];</span></p>
<p class="MsoNormal">
-
</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Any ideasu2026</p>