掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VB.NETユーザー定義型でLong型を用いたい場合のマーシャリング (ID:147929)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
魔界の仮面弁士さん shuさん >64bit版の VBA で使う場合は構いませんが、VBA32 でも使いたいなら、 >Long(Int64)型の利用は避けた方が無難です。 >代わりに、Integer(Int32)型のメンバーを2つ用意したり、 >String や Decimal 等で代用できないか検討してみてください。 >この他、VB2005 以降で追加されたプリミティブ型 >(SByte, UShort, UInteger, ULong)も、VBA では >サポートされていませんので、取扱いにご注意ください。 VBA32でサポートされていないものは極力使わないようにします。 Integer(Int32)型のメンバーを2つ用意する方向で検討し始めたのですが コードを書き換えているうちに何をしているのかよく分からなくなってきて、 元々したかったことは、VB.NETの32ビットの整数値とVBA32の32ビットの整数値 の受け渡しをしたかったのですが、shuさんからのご指摘のように、 VB.NETのLongを32ビットと勘違いしていたことと、 VB.NETのLongは同じ名称のVBA32のLongに対応させるもの と思い込んでいたため、今回のようなご質問をしたのですが、 いろいろ確認していたら、質問の意図とは少し違ってしまったのですが VB.NETのInteger(32bit)とVBA32のLong(32bit)とでは、 マーシャリングしなくてもそのまま受け渡しができているようなので、 この対応でなんとか解決しそうです。 ありがとうございました。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.