タイトル : ラジオボタンやチェックボックスの返す値(?)について 投稿日 : 2010/10/05(Tue) 01:58 投稿者 : Seira
初めまして。Seiraと申します。 VBに関しては参考書なしではコードが書けない程度の能力です。 パソコンのOSはWinXP、Microsoft Visual Basic 2005 Express Editionを使っています。 今、ラジオボタンやチェックボックスで質問に回答し、「入力完了」のボタンを押すと結果をエクセルに出力するプログラムを作っています。 ・ラジオボタンはグループボックスでまとめてあり、RadioButton1を選択したら「1」を、RadioButton2を選択したら「2」を、選択しなかった場合は「0」を返す、といった感じです。 ・チェックボックスは、チェックを入れた場合は「1」を、チェックを入れなかった場合は「2」を返す ・ラジオボタンの質問とチェックボックスの質問はタブで分けてある ・入力完了ボタンを押すと「保存されました。」と出るが、プログラムは終了しない。入力内容を変えて再度ボタンを押せば、前のデータの下の行に保存できる 以上を踏まえて自分なりにプログラムを組んでみたのですが、選択したラジオボタンやチェックボックスに関わらず「0」が出力されてしまいます。 (出力されたファイルを見ると、返すべき値の数だけ0がエクセルのA列にひたすら出力されます・・・。) 以下ソースです。 長くなってしまうので、ラジオボタンの質問は2択が1問、チェックボックスの質問も2問にしてあります。 Public Class Form1 'ラジオボタン Dim GB1 As Integer Private Sub GroupBox1_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox1.Enter If RadioButton1.Checked = True Then GB1 = 1 ElseIf RadioButton2.Checked = True Then GB1 = 2 Else GB1 = 0 End If End Sub 'チェックボックス Dim CB1,CB2 As Integer Private Sub GroupBox2_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox2.Enter If CheckBox1.Checked = True Then CB1 = 1 Else CB1 = 0 End If If CheckBox2.Checked = True Then CB2 = 1 Else CB2 = 0 End If End Sub '出力 Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim filename As String = "Testing.csv" Dim fileNo As Integer = FreeFile() 'ファイルを開く FileOpen(fileNo, filename, OpenMode.Append) '出力部 PrintLine(fileNo, GB1) PrintLine(fileNo, CB1) PrintLine(fileNo, CB2) 'ファイルを閉じる FileClose(fileNo) MessageBox.Show("保存されました。", "通知") End Sub End Class (ここまで) また、これで実行すると 0 0 0 と、毎回改行されてしまうのですが、これを 0 0 0 と改列(?)することはできないでしょうか? すみませんが、よろしくお願いします。 長文失礼致しました。 |