「VB.NET」DataTableクラスに行の値を変更する方法

2021年9月14日

書式
DataTable変数名.Rows(行目数-1).Item(項目名) = 変更値
使用例

Module Module1
    Sub Main()

        'テーブル作成
        Dim dta As New DataTable("userテーブル")
        '項目を追加
        dta.Columns.Add("userno")
        dta.Columns.Add("username")
        dta.Columns.Add("dep")
        dta.Columns.Add("addr")


        'DataRow型変数rowの定義
        Dim row As DataRow
        '変数の作成
        row = dta.NewRow
        'userno値を追加
        row("userno") = "3001"
        'username値を追加
        row("username") = "userA"
        'dep値を追加
        row("dep") = "開発部"
        'addr値を追加
        row("addr") = "東京"

        '1行目をテーブルに追加
        dta.Rows.Add(row)


        '変更をコミット
        dta.AcceptChanges()
        Console.WriteLine("DataTableの行の値を追加する結果")
        'ループでデータを取得
        For Each dr As DataRow In dta.Rows
            Console.WriteLine(dr("userno").ToString + " " + dr("username").ToString + " " + dr("dep").ToString + " " + dr("addr").ToString)

        Next

        '1行目の値を変更
        dta.Rows(0).Item("addr") = "横浜"
        dta.Rows(0).Item("dep") = "企画部"
        dta.AcceptChanges()

        Console.WriteLine("")
        Console.WriteLine("DataTableの行の値を変更する結果")
        'ループでデータを取得
        For Each dr As DataRow In dta.Rows
            Console.WriteLine(dr("userno").ToString + " " + dr("username").ToString + " " + dr("dep").ToString + " " + dr("addr").ToString)

        Next

        Console.ReadKey()

    End Sub

End Module

実行結果
DataTableの行の値を追加する結果
3001 userA 開発部 東京

DataTableの行の値を変更する結果
3001 userA 企画部 横浜

VB.net

Posted by arkgame