tagCANDY CGI ユーザー定義型の中にユーザー定義型を定義してコピー
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
ユーザー定義型の中にユーザー定義型を定義してコピー
このスレッドはロックされています。記事の閲覧のみとなります。
元に戻る スレッド一覧へ 記事閲覧
このページ内の検索ができます。(AND 検索や OR 検索のような複数のキーワードによる検索はできません。)

ユーザー定義型の中にユーザー定義型を定義してコピー [No.101の個別表示]
日時: 2008/04/30 15:28
名前: ばつ

こんにちは。

ユーザー定義型の中にユーザー定義型を定義した場合について
質問があります。

Type Data
    moji1 As String * 5
    moji2(2) As MEISAI
    moji3 As String * 5
End Type

Type MEISAI
    money As String * 5
End Type

Type Buffer
    moji4 As String * 25
End Type

Private MojiData As Data


Sub test()
    Dim strmoji As String
    Dim strbuff As Buffer

    MojiData.moji1 = "あいうえお"
    MojiData.moji2(0) = "10000"
    MojiData.moji2(1) = "20000"
    MojiData.moji2(2) = "30000"
    MojiData.moji3 = "さしすせそ"

    LSet strbuff = MojiData     ← ここで「型が一致しません」エラー
    strmoji = strbuff.moji4

End Sub

LSet で、コピーをしたいのですが、(最終的にはString型の変数に設定がしたい)
コンパイル時点でエラーになりました。

どなたかアドバイスを頂けませんでしょうか?
説明不足でしたら申し訳ありません。


メンテ

Page: 1 |

Re: ユーザー定義型の中にユーザー定義型を定義してコピー  (No.1) [スレッド一覧へ]
日時: 2008/04/30 16:06
名前: いな

こういったQAサイトを見て、
回答する人は大体限られていますからすぐ分かりますよ〜。

「初めにお読みください」
http://hanatyan.sakura.ne.jp/hazimeni.htm
をお読みください。

http://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?print+200804/08040026.txt
メンテ
Re: ユーザー定義型の中にユーザー定義型を定義してコピー  (No.2) [スレッド一覧へ]
日時: 2008/04/30 16:12
名前: ふるふる

ユーザー定義中に、ユーザー定義の配列だとコンパイルエラーになるようですね。
配列ではないユーザー定義なら許されるようです。
ですので、配列の位置をユーザー定義中に移動すると可能なようです。

Type MEISAI
    money(2) As String * 5
End Type

Type Data
    moji1 As String * 5
    moji2 As MEISAI
    moji3 As String * 5
End Type


Type Buffer
    moji4 As String * 25
End Type

Private MojiData As Data


Sub test()
    Dim strmoji As String
    Dim strbuff As Buffer
    Dim M As MEISAI
    M.money(0) = "10000"
    M.money(1) = "20000"
    M.money(2) = "30000"
    
    MojiData.moji1 = "あいうえお"
    MojiData.moji2 = M
    MojiData.moji3 = "さしすせそ"
        
    LSet strbuff = MojiData     '成功する    
    strmoji = strbuff.moji4

End Sub
メンテ

Page: 1 |