Dim jsonList = JsonConvert.DeserializeObject(Of JObject)(TextBox1.Text)("list") Dim cols = jsonList("grouplist").Select(Function(g) g.ToString()) Dim jsonDataTable As New DataTable("JsonDataTable") jsonDataTable.Columns.AddRange(cols.Select(Function(c) New DataColumn(c)).ToArray()) For rowIndex = 0 To Integer.MaxValue - 1 Dim newRow = jsonDataTable.NewRow() For Each col In cols newRow(col) = jsonList(col).ElementAtOrDefault(rowIndex) Next If newRow.ItemArray.All(AddressOf IsDBNull) Then Exit For End If jsonDataTable.Rows.Add(newRow) Next jsonDataTable.AcceptChanges() DataGridView1.DataSource = jsonDataTable