admin menu ≫  image  writes  admin
スポンサーサイト 
--.--.--.-- 
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
もうちょっとで完成? 
2009.03.20.Fri 
今日は祭日だけど、昨夜思いついたことを忘れないうちにやっつけてしまおうと出勤してます。

で・・・こんなことしてるわけで(^^;

Box1.jpg

Box2.jpg

Box3.jpg

Box4.jpg

Box5.jpg

Box6.jpg

「エクセルVBAからC++Builder用のバイナリ形式ファイルを出力する!!」
簡単に出来ると思ったら・・・C++とVBAのデータの型の違いに結構戸惑って・・・あちこち検索(。。;
で、ようやっとここまで辿り着くことができましたぁ??!!

なるほどねぇ?
C++のint型データは、VBAのLong型、
C++のchar型データは、VBAのByte型で対応できるんですね・・・

でも、VBAのByte型2次元配列データから、string型データへの変換方法が???(^^;
しかたなく1次元配列にしてみたけど・・・どうも納得いかない(^^;・・・

取りあえず、思いついたことはできたので、今日はここまで・・・お腹すいたよぉ??!!(^^;

おっと!!WBC1位通過ですか!!

「C++BuilderとエクセルVBAのバイナリ形式ファイル出力」の違い

//C++Builder の struct構造体
struct BoxData{
char str[2][256];
int dummy[5];
double data[26];
}box;
//C++Builderのstruct構造体を使ったバイナリ形式ファイルの出力
handle = open( SaveDialog1->FileName.c_str(), O_CREAT | O_RDWR | O_BINARY, S_IREAD | S_IWRITE );
write( handle, &box, sizeof( struct BoxData ) );
close( handle );



上記のC++Builderと同じ構造体をエクセルVBAで表現すると

Option Explicit
Type BoxData
str1(255) As Byte 'VBAのバイト型の2次元配列の扱い方が良く判らないので1次元です(^^;
str2(255) As Byte
dummy(4) As Long
data(25) As Double
End Type

'エクセルVBAによるバイナリ形式ファイルの出力
Dim PutRecord As BoxData
Dim handle As integer

handle = FreeFile
Open FileName For Binary Access Write As #handle
Put #handle, , PutRecord
Close #handle

関連記事
スポンサーサイト
* スポンサーサイトもうちょっとで完成?へのコメント *
   

台風画報


ナショジオニュース

降水短時間予報

RSSフィード

月別アーカイブ

ブログ内の検索

プロフィール


  • Designed by Il mio diario
  • Powered by FC2BLOG
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。