文字列変換、数字変換、よく使うサブルーチンライブラリ
toStr.bas
シートのセルを文字列で組み合わせようとするとよくエラーになるのがセル内が文字列ではなく数字だった場合。手間がかかりますwww
そこで力づくで文字列に変換するサブルーチンを使っています。
ちなみに数字を文字列に変換する関数は str() ですけど、これを使うと数値が正の場合、数字の前に符号を表す空白が入ります。
連想配列やファイル名を作ったりする時、この前方の空白が邪魔!
そのため、数字を文字列に変換する場合は、Format(値,”0″)で処理すると余計な空白を含みません。
無理やり文字列に変換する
数字だろうが、文字列だろうが、お構いなし。とにかく文字列で処理させたい!そういう時便利です。
書式 Function toStr(v)
‘v:文字列に変換したい値
使用例、
Dim buff
Cells(1,2) = "56"
Cells(1,3) = "氏名"
Cells(1,4) = "32"
Cells(1,5) = "年齢"
buff = ""
buff = buff + toStr.toStr(Cells(1,3)) + " "
buff = buff + toStr.toStr(Cells(1,2)) + " , "
buff = buff + toStr.toStr(Cells(1,5)) + " "
buff = buff + toStr.toStr(Cells(1,4)) + " "
無理やり数値に変換する
数字だろうが、文字列だろうが、お構いなし。とにかく数値で処理させたい!そういう時便利です。
書式 Function toNum(v)
‘v:数値に変換したい値
使用例、
Cells(1,2) = "56"
Cells(1,3) = "氏名"
Cells(1,4) = "32"
Cells(1,5) = "年齢"
buff = ""
buff = buff + toStr.toNum(Cells(1,3))
buff = buff + toStr.toNum(Cells(1,2))
buff = buff + toStr.toNum(Cells(1,5))
buff = buff + toStr.toNum(Cells(1,4))
結果、
88
固定長 16進文字列に変換する
書式 Function toHex(v, iLen)
v:変換したい値
iLen:固定長
iLen:固定長
使用例、
Dim v, hexstr
v = 255
hexstr = toStr.toHex(v,4)
結果、
000f