[リストへもどる]
一括表示

投稿時間:2003/08/27(Wed) 15:31
投稿者名:相川
URL :
タイトル:
データ構造の配列を引数で渡す方法
早速ですが、お聞きしたいことがあります。

データ構造の配列を作成したのですが、それを行ごとに、別の標準モジュールに渡したいのですが
Errになってしまいうまく渡すことができません。

どなたか、教えてください。よろしくお願いします。

投稿時間:2003/08/27(Wed) 16:54
投稿者名:ゆんける
Eメール:
URL :
タイトル:
Re: データ構造の配列を引数で渡す方法
> データ構造の配列を作成したのですが、それを行ごとに、別の標準モジュールに渡したいのですが
> Errになってしまいうまく渡すことができません。

データ構造の配列・・・?
宣言文とかあれば分かりやすいのですが・・・

Dim usrStruct(99) As TestStruct

Type TestStruct
    intHoge As Integer
    strFuga As String
End Type

こんな感じなんでしょうか・・・?

投稿時間:2003/08/27(Wed) 18:06
投稿者名:相川
URL :
タイトル:
Re^2: データ構造の配列を引数で渡す方法
返信ありがとうございます。
ソースを抜粋して載せてみました。

引数を受け取ろうとすると落ちるんですよ...


標準モジュール内-------------------------------------------------

定義
Private Type EntaiData
    KCode           As String
    KanaName        As String
    dtSiharai       As String
    Entaikin        As String
    Zante           As String
    Misyuukin       As String
    OkRisoku        As String
    NgRisoku        As String
    Gankin          As String
End Type

Private Prig_EntaiData() As EntaiData

受渡し

Cas_ExcelEdit0750(Prig_EntaiData(LoopCnt)) = False Then

------------------------------------------------------------------------------
違う標準モジュール内-------------------------------------------------
受け取り 部分
ここに遷移した瞬間落ちます。
Public Function Cas_ExcelEdit0750(ByRef Test() As EntaiData) As Boolean

------------------------------------------------------------------------------

投稿時間:2003/08/28(Thu) 00:11
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re^3: データ構造の配列を引数で渡す方法
> 標準モジュール内-------------------------------------------------
> Private Type EntaiData
(中略)
> End Type

『Private宣言されたユーザーデータ型』を『違う標準モジュール内』で使う事はできないかと。

投稿時間:2003/08/28(Thu) 10:02
投稿者名:nanashi
Eメール:
URL :
タイトル:
Re^4: データ構造の配列を引数で渡す方法
あと、

>  Cas_ExcelEdit0750(Prig_EntaiData(LoopCnt)) = False Then

こういう渡し方をするんであれば

> Public Function Cas_ExcelEdit0750(ByRef Test() As EntaiData) As Boolean

受け側は配列にする必要はないと思います。

投稿時間:2003/08/28(Thu) 15:00
投稿者名:相川
URL :
タイトル:
解決しました
皆様のおっしゃるとおり

Private Type EntaiData → Public Type EntaiData
                 +
Cas_ExcelEdit0750(Prig_EntaiData()) = False Then

と修正したところ、引数を受け渡すことがでしました。
大変ありがとうございました。