Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7543 / 13644 ツリー ←次へ | 前へ→

【37314】ExcelVBAからdllの関数を利用する方法 06/4/28(金) 18:17 質問[未読]
【37315】Re:ExcelVBAからdllの関数を利用する方法 Blue 06/4/28(金) 18:24 発言[未読]
【37316】Re:ExcelVBAからdllの関数を利用する方法 06/4/28(金) 18:31 発言[未読]
【37317】Re:ExcelVBAからdllの関数を利用する方法 Blue 06/4/28(金) 18:34 発言[未読]
【37318】Re:ExcelVBAからdllの関数を利用する方法 06/4/28(金) 18:42 回答[未読]
【38393】Re:ExcelVBAからdllの関数を利用する方法 無我夢中 06/6/1(木) 18:53 回答[未読]
【38394】Re:ExcelVBAからdllの関数を利用する方法 無我夢中 06/6/1(木) 18:55 回答[未読]

【37314】ExcelVBAからdllの関数を利用する方法
質問    - 06/4/28(金) 18:17 -

引用なし
パスワード
   使用環境は以下です。
Excel2000
Microsoft Visual Basic .NET
.NET Framework1.1

以下の手順を踏んでVBAからDLLを利用できません。
どなたか何が不足しているのかご教授をよろしく
願います。

手順1)
VB.NETで、プロジェクト名をCOM2NETtestとし、
下記のソースを作り、ビルドして
C:\COM2NETtest\bin直下にCOM2NETtest.dllを
作成しました。

Public Class NETclass

  Public Function GetValue(ByVal data As String) As String
    Return "このデータは、" & data
  End Function

  Public Function GetDate() As Date
    Return Now
  End Function

End Class

手順2)
デスクトップにExcelファイルを作成し、VBEを起動し、
ThisWorkBookに下記のコードを書きました。

Option Explicit

Private Declare Function GetValue Lib "C:\COM2NETtest\bin\COM2NETtest.dll" (ByVal data As String) As String

Public Sub showmsg()
  MsgBox GetValue("AAAA")
End Sub

手順3)
コンパイルした後、showmsgメソッドにステップを置いて
実行したら、以下のエラーメッセージが出ます。

[エントリGetValueがDLLファイル
C:\COM2NETtest\bin\COM2NETtest.dll内に見つかりません。]

【37315】Re:ExcelVBAからdllの関数を利用する方法
発言  Blue  - 06/4/28(金) 18:24 -

引用なし
パスワード
   .NETで作成したクラスライブラリを使いたいならば、CreateObejctで使えるようにつくらないとダメかと思います。
(Declare〜で呼べるような構造にはなっていない。)

どうすればよいかはワカリマセン。
もっと .NET専用の掲示板で聞いたほうが良いかも。

【37316】Re:ExcelVBAからdllの関数を利用する方法
発言    - 06/4/28(金) 18:31 -

引用なし
パスワード
   ▼Blue さん:

早速のご返事ありがとうございます。
CreateObejctで使えるか調べてみます。

>.NETで作成したクラスライブラリを使いたいならば、CreateObejctで使えるようにつくらないとダメかと思います。
>(Declare〜で呼べるような構造にはなっていない。)
>
>どうすればよいかはワカリマセン。
>もっと .NET専用の掲示板で聞いたほうが良いかも。

【37317】Re:ExcelVBAからdllの関数を利用する方法
発言  Blue  - 06/4/28(金) 18:34 -

引用なし
パスワード
   ▼虎 さん:
>CreateObejctで使えるか調べてみます。
いや、普通にDLLつくっただけじゃ無理ですよ。
いろいろ面倒なことをやらないといけません。

だから
> どうすればよいかはワカリマセン。
ってことなんです。

【37318】Re:ExcelVBAからdllの関数を利用する方法
回答    - 06/4/28(金) 18:42 -

引用なし
パスワード
   ▼Blue さん:

了解しました。
>▼虎 さん:
>>CreateObejctで使えるか調べてみます。
>いや、普通にDLLつくっただけじゃ無理ですよ。
>いろいろ面倒なことをやらないといけません。
>
>だから
>> どうすればよいかはワカリマセン。
>ってことなんです。

【38393】Re:ExcelVBAからdllの関数を利用する方法
回答  無我夢中 WEB  - 06/6/1(木) 18:53 -

引用なし
パスワード
   もし既にご存知でしたらゴメンナサイ。
私も丁度同じ事を考えていたので探してみました。
よろしければどうぞ

【38394】Re:ExcelVBAからdllの関数を利用する方法
回答  無我夢中  - 06/6/1(木) 18:55 -

引用なし
パスワード
   ▼無我夢中 さん:
>もし既にご存知でしたらゴメンナサイ。
>私も丁度同じ事を考えていたので探してみました。
>よろしければどうぞ
<http://www.microsoft.com/japan/msdn/net/upgrade/callcomcomp.asp>

7543 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free