アプリ版:「スタンプのみでお礼する」機能のリリースについて

BMPファイルを読み込んで配列に書き出すプログラムを作ろうとしています。
BMPファイルの構造は
http://www.geocities.co.jp/Playtown-Knight/6845/ …

のページに書かれてあるのですが、
typedef unsigned short WORD
typedef unsigned long DWORD
typedef unsigned char BYTE
typedef long LONG

などの「符号無し整数」で定義された変数を使う必要があります。


http://homepage1.nifty.com/rucio/main/kiso/DataT …

のページにあるようにVBではUlongやUshortが使えるようなのですが、

VBA上で

Dim bfSize As ULong


とすると、「ユーザー定義型は定義されていません」
と表示されます。

参照設定のところで何か設定を行えば良いと思うのですがどこを設定すれば良いのでしょうか?


もし、使えないとして、VBAで2バイトや4バイトを数値として読み込むにはどうすれば良いでしょうか?

A 回答 (2件)

http://support.microsoft.com/kb/189323/ja

参考にしてみてください。
    • good
    • 0

無いのであれば何とかするしか無いですね。



 vbaで問題とされているのは符号ビット付き変数なので、読んだ値が負の数であれば補正してやれば良いでしょう。
 入れ先の変数は unsigned short や unsigned long で溢れない Currency にすれば良いと思います。また、運用上、2GBを超えないとか制限できるならば long で構わないですよね。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!