none
変数の格納方法について RRS feed

  • 質問

  • 言語 = VB.NET
    ツール = VS2013Pro
    OS = win7


    いつもお世話になっております。
    現在、ある固定値を設定し、取得した値と固定値を比較しようと考えております。

    そこで、固定値の設定方法が判らず、投稿させて頂きます。

    下記のようなイメージで、値を設定したいと考えておりますが、
    『Cellの値をStringの1次元配列に変換できません』とメッセージが表示されます。
    当然、【list】はString型で宣言しているので注意されるのは判るのですが、
    どのように記述したらよいのか判らず、半日以上悩んでしまっております。

    初歩的な質問なのですが、判らずご教示頂き度、質問させて頂きます。

    ーーーーーーーー記ーーーーーーーー
    Module ReportSheetProtery

     Public list as List(Of String)= new List(Of String)

        Sub New()

      with list
         
       .add(new cell() with {.retu = 1, .name = 得意先1})
       .add(new cell() with {.retu = 2, .name = 得意先2})
       .add(new cell() with {.retu = 3, .name = 得意先3})
       .add(new cell() with {.retu = 4, .name = 得意先4})
       .add(new cell() with {.retu = 5, .name = 得意先5})
       .add(new cell() with {.retu = 6, .name = 得意先6})

      end with

     End Sub

    End Module


    Public Class cell

        Public Property retu As String
        Public Property name As String

    End Class


    以上、何卒宜しくお願い申し上げます。

    2015年11月6日 1:19

回答

  • されたいことが良くわかっていないのですが、普通に考えれば、

     Public list as List(Of cell)= new List(Of cell)

    となりますが、こういうことではないのでしょうか?


    ★良い回答には回答済みマークを付けよう! MVP - .NET  http://d.hatena.ne.jp/trapemiya/

    • 回答としてマーク kong0214 2015年11月6日 3:41
    2015年11月6日 1:34
    モデレータ
  • こんにちは。

    どのように記述したらよいのか判らず

    まずどのようにしたいのか、だと思います。
    String型Listへ格納したいのであればretuかnameのどちらかを格納させることになるんじゃないかと。

            With list
                .Add(得意先1)
                .Add(得意先2)
                .Add(得意先3)
                .Add(得意先4)
                .Add(得意先5)
                .Add(得意先6)
            End With
    cell型でList構築したいのであれば、trapemiyaさんが仰っているような定義が必要です。

    • 回答としてマーク kong0214 2015年11月6日 3:42
    2015年11月6日 1:38
    モデレータ
  • Hoshinaです
    こんにちは

    今回の質問とは全く異なる内容になりますが、ご了解ください。

    クラスの名前は大文字で始めるというのが、一般的な決め事となっています。
    そこで、「cell」クラスは「Cell」クラスに変更することをお勧めします。

    こうした小さなことが積もると、のちのちプログラムの可読性に影響してきますよ。

    参考になるようでしたら、ご検討ください。
    それでは

    • 回答としてマーク kong0214 2015年11月6日 3:42
    2015年11月6日 1:55

すべての返信

  • されたいことが良くわかっていないのですが、普通に考えれば、

     Public list as List(Of cell)= new List(Of cell)

    となりますが、こういうことではないのでしょうか?


    ★良い回答には回答済みマークを付けよう! MVP - .NET  http://d.hatena.ne.jp/trapemiya/

    • 回答としてマーク kong0214 2015年11月6日 3:41
    2015年11月6日 1:34
    モデレータ
  • こんにちは。

    どのように記述したらよいのか判らず

    まずどのようにしたいのか、だと思います。
    String型Listへ格納したいのであればretuかnameのどちらかを格納させることになるんじゃないかと。

            With list
                .Add(得意先1)
                .Add(得意先2)
                .Add(得意先3)
                .Add(得意先4)
                .Add(得意先5)
                .Add(得意先6)
            End With
    cell型でList構築したいのであれば、trapemiyaさんが仰っているような定義が必要です。

    • 回答としてマーク kong0214 2015年11月6日 3:42
    2015年11月6日 1:38
    モデレータ
  • Hoshinaです
    こんにちは

    今回の質問とは全く異なる内容になりますが、ご了解ください。

    クラスの名前は大文字で始めるというのが、一般的な決め事となっています。
    そこで、「cell」クラスは「Cell」クラスに変更することをお勧めします。

    こうした小さなことが積もると、のちのちプログラムの可読性に影響してきますよ。

    参考になるようでしたら、ご検討ください。
    それでは

    • 回答としてマーク kong0214 2015年11月6日 3:42
    2015年11月6日 1:55
  • いつもお世話になっております。

    ご指摘の通り、
    Public list as List(Of String)= new List(Of String)
    ⇒Public list as List(Of cell)= new List(Of cell)
    で自分のやりたい事が出来ました。

    cellを【String】型にするには?とずっと考えていましたが、
    単純に考えればご指摘の通りですね。


    大変助かりました、有難う御座います。

    2015年11月6日 3:41