プログラミング

プログラミングに関するフォーラムです。VBAは除きます。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10全般 : VB .net)
VBAとVB.NETとの違い
投稿日時: 22/05/16 17:53:46
投稿者: masawa
メールを送信

 VBAで以下のように書いたプログラムをVB.NETに書き換えるにはどのように書けばいいのか教えて頂きたい。
  VBA
  Dim bxz as Integer
  For bxz = 5 To 10
    With UserForm1("ComboBox" & bxz)
        .AddItem "a"
        .AddItem "b"
        .AddItem "c"
        .AddItem "d"
        .AddItem "e"
        .AddItem "f"
    End With
  Next
 
  VB.NET
  For n = 3 To 8
     Dim cb As ComboBox = DirectCast(Me.Controls("ComboBox" & CStr(n)), ComboBox)
     With cb
       .Items.Add("a")
       .Items.Add("b")
       .Items.Add("c")
       .Items.Add("d")
       .Items.Add("e")
       .Items.Add("f")
     End With
  Next
 よろしくお願いします。

回答
投稿日時: 22/05/19 22:21:21
投稿者: MMYS

方法1

        Dim cb(2) As ComboBox
        cb(0) = Me.ComboBox1
        cb(1) = Me.ComboBox2
        cb(2) = Me.ComboBox3
        For i As Integer = 0 To cb.Length - 1
            With cb(i)
                .Items.Add("a")
                .Items.Add("b")
                .Items.Add("c")
                .Items.Add("d")
                .Items.Add("e")
                .Items.Add("f")
            End With
        Next

 
方法2
        For i As Integer = 1 To 3
            Dim c As Control() = Me.Controls.Find($"ComboBox{i}", True)
            Dim cb As ComboBox = c(0)
            With cb
                .Items.Add("a")
                .Items.Add("b")
                .Items.Add("c")
                .Items.Add("d")
                .Items.Add("e")
                .Items.Add("f")
            End With
        Next

 

投稿日時: 22/05/20 08:41:45
投稿者: masawa
メールを送信

MMYSさん、有難うございました。
うまく動きました。
VB.NET及び、Visual Studio 2022は初心者です。
また教えてください。
有難うございました。