電子書籍の厳選無料作品が豊富!

2015年版の visual basic を使っていますが、
どうしても、文字列の1次元配列を、ListBox に、表示できません。
どなたか、助けてください m__m

例えば、
Dim array1(2) as string

array1(0) = "パパ”
array2(1) = "大好き”

ListBox1.Items.Add (array1(0)) <- エラーがでます
ListBox1.Items.Add (array1(0))   <- エラーがでます

あるいは、
ListBox1.Items.AddRange (array1)  <- エラーがでます

A 回答 (3件)

No.1です。



でも正直Listクラスを使った方が要素数とか気にせず楽な気もしますけどね。

Dim array1 As List(Of String) = New List(Of String)

array1.Add("りんご")
array1.Add("バナナ")
array1.Add("いちご")

ListBox1.Items.AddRange(array1.ToArray)

VBAでこれが使えたら良いのになぁ。
    • good
    • 1

既に解決済み(知恵袋の方)で見て頂けないかもですが参考まで。



https://dobon.net/vb/dotnet/file/getfiles.html

の Directory.EnumerateFilesメソッド を使ってみて最初の部分から。

Dim files As IEnumerable(Of String) =
System.IO.Directory.EnumerateFiles(
"C:\tgoh\SOPDocuments", "*.rtf", System.IO.SearchOption.TopDirectoryOnly)

Dim file_name = files.Select(Function(x) System.IO.Path.GetFileName(x)).ToArray

MsgBox(String.Join(Environment.NewLine, file_name))

ListBox1.Items.AddRange(file_name)

これでファイル名の取得とリストボックスへの登録は完了します。
多分ちょっと余計なものがあるかもですけど。(このメソッド初めて使ったので)
    • good
    • 0
この回答へのお礼

わざわざありがとうございます。

確かに、一番コンパクトで分かり易いです。

ありがとうございます。

お礼日時:2020/02/12 06:56

こうではないかな?



Dim array1(2) As String

array1(0) = "りんご"
array1(1) = "バナナ"
array1(2) = "いちご"

ListBox1.Items.AddRange(array1)

--------

変数:array2は存在してないし、要素数を2で入れているなら0~2のインデックスに対して値を入れないとNullがあると登録できなかったです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!