質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
DataGrid

GUIの一種であり、データを表の形式でみることが可能です。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

Q&A

1回答

4303閲覧

VB.netのDataGridViewにデータを追加したいのですが…

TK0107

総合スコア11

DataGrid

GUIの一種であり、データを表の形式でみることが可能です。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

0グッド

0クリップ

投稿2017/07/08 10:42

名前、身長、体重を入力したらBMIが計算され、その後一覧に登録するアプリを作りたいのですが、
DataGridView.add()の使い方がわかりません。変数をDataGridView.addで扱えないのでしょうか?ご教授お願い致します。

VB.NET

1Public Class Form1 2 Private Sub btnClose_Click(sender As Object, e As EventArgs) Handles btnClose.Click 3 Me.Close() 4 End Sub 5 6 Private Sub btnBMI_Click(sender As Object, e As EventArgs) Handles btnBMI.Click 7 8 Dim Height As Double = txtHeight.Text 9 10 Dim Weight As Double = txtWeight.Text 11 12 Dim Name As String = txtName.Text 13 14 Dim BMI As Double 15 16 If Height > 0 AndAlso Weight > 0 Then 17 lblerror.Text = "" 18 BMI = Weight / ((Height / 100) * (Height / 100)) 19 20 txtBMI.Text = BMI.ToString("0.0") '有効数字以下は四捨五入される 21 22 '肥満度判定 23 If txtBMI.Text >= 25 Then 24 lblHimando.Text = "肥満" 25 ElseIf txtBMI.Text < 25 AndAlso txtBMI.Text >= 18.5 Then 26 lblHimando.Text = "普通" 27 ElseIf txtBMI.Text < 18.5 Then 28 lblHimando.Text = "痩せ" 29 End If 30 31 '肥満度によって文字の色を変更 32 If lblHimando.Text = "肥満" Then 33 lblHimando.ForeColor = Color.Red 34 ElseIf lblHimando.Text = "痩せ" Then 35 lblHimando.ForeColor = Color.Blue 36 37 End If 38 39 '0以下が入力された時にエラーメッセージを表示 40 Else 41 lblerror.Text = "正しい値を入力してください" 42 lblHimando.Text = "" 43 End If 44 45 End Sub 46 47 Private Sub DataGridView1_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick 48 49 End Sub 50 51 Private Sub btnTouroku_Click(sender As Object, e As EventArgs) Handles btnTouroku.Click 52 53 If txtBMI.Text = "" Then 54 lblerror.Text = "計算してください" 55 56 Else 57 58 For i As Integer = 1 To 10 59 'ここにID=i,Nameカラム=Name、身長カラム=身長・・・と書きたい 60 Next 61 62 End If 63 End Sub 64End Class 65

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

DataGridViewに行を追加するにはDataGridView.Rows.Addするようにしましょう

ざっくり書くと

For i As Integer = 1 To 10 Dim NewRow As DataGridViewRow NewRow.Cells["列名:ID"].Value = i NewRow.Cells["列名:Name"].Value = ”名前” NewRow.Cells["列名:身長"].Value = 195 NewRow.Cells["列名:肥満度"].Value = "肥満" DataGridView.Rows.Add(NewRow) Next

な感じで

投稿2017/07/08 12:06

dojikko

総合スコア3939

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TK0107

2017/07/08 12:11

回答ありがとうございます。 NewRow.Cells["列名:Name"].Value = ”名前” についてなのですが、 NewRow.Cells["列名:Name"].Value = ”txtName.Text” とすれば、テキストボックスに入っている名前がNameカラムに追加されるのでしょうか?
dojikko

2017/07/08 12:19

その場合は NewRow.Cells["列名:Name"].Value = txtName.Text な感じで やってみたらわかりますが”txtName.Text”と引用符で括るとtxtName.Textという文字列が入ります
dojikko

2017/07/08 12:21

あと大丈夫だと思いますが実際のコードは"列名:Name"ではないですよ あなたがDataGridViewの列定義で付けた名前です
TK0107

2017/07/08 13:01

何度もすみません DataGridのカラム名が ID NameView HeightView WeightView BMIView となっているのですが、 NewRow.ID.value = i と書いたところ、'ID'は'DataGridView'のメンバーではありませんと言われました。C言語の構造体のように.を付ければそのカラムを指定できるのではないかと思ったのですが、違うのでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問