こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VBA&c++のデータ受け渡り

excel VBAを使用し、セルに入っているipアドレスを文字列をc++で作成したDLLファイル内にある関数に引数として渡したいのですが、関数内で確認すると旨く渡っていません。(正しく表示されない)
何か特別な方法やアドバイスが有れば宜しくお願いいたします。
現在の状況は文字列をstringに入れそのアドレスを引数としています。DLL内関数の引数の型はcharのアドレスです。

投稿日時 - 2005-05-26 13:00:13

QNo.1410916

すぐに回答ほしいです

質問者が選んだベストアンサー

DLL内の関数が
func(char *str)
だとしたら、
VBA
では、
Declare Function func Lib "funcdll.dll" (ByVal str As String)

dim str as String
str="192.168.10.11"
func(str)
で良いです。
アドレスを渡す必要はないです。

投稿日時 - 2005-05-26 20:10:42

お礼

有難う御座いました。
BLUEPIXYさんの通り参照渡しを変更した結果うまく
いきました。
大変感謝致します。

投稿日時 - 2005-05-27 09:39:51

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

DLL内の関数のコールまでおこなえていて、引数が受け取れていないのであれば、

1.呼び出し規約WINAPI (または__stdcall)の指定がDLLの関数に無い。

2.VBのDeclareステートメントが間違ってる

のどちらかだと思います。

投稿日時 - 2005-05-27 02:34:23

お礼

無事に解決出来ました。
ご協力有難う御座いました。

投稿日時 - 2005-05-27 09:40:57

あなたにオススメの質問