|
焦っていたので、詳しい内容を記載しておりませんでした。すみません。
ワークシート名:データーベース
入力データー名:患者ID
氏名
性別
生年月日
年齢
入院・外来
発症日・起算日
主治医・処方医
診断名
種別
算定期限
転機
登録ボタン:クリックするとデーター入力用のユーザーフォームを表示
(ユーザーフォーム名:UserForm3)
UserForm3:
患者ID→TextBox1 氏名→TextBOx2
性別→Frame8内に「男」はOptionButton1、「女」はOptionButton2
生年月日→TextBox3 年齢→TextBox4
入院・外来→Frame2内に「入院」はOptionButton3、「外来」はOptionButton4
入院日→TextBox5 診断名→TextBox6 主治医・処方医→TextBox9
種別→Frame9内に CheckBox1〜CheckBox8まで
発症日・起算日→TextBox7 算定期限日→TextBox8
転機→Frame10内にCheckBox9〜CheckBox12
登録ボタン→CommandButton1 キャンセルボタン→CommandButton2
UserForm3で入力した内容を、データーベースと名づけたワークシートに転記しようとしています。データーベースの最後の行に追加していく形で登録していくように設定しています。UserForm3の内容の生年月日・年齢は設定しているのですが、転機できません。「入院日」「発症日・起算日」「算定期限日」はまだ設定できていません。「入院日」「発症日・起算日」はそれぞれ日付を入力する予定です。「算定期限日」は「発症日・起算日」より所定の数字を足した日付が表示されるようにしたいと思っています。UserForm3内で、チェックボックスやオプションボタン、登録ボタン、キャンセルボタンの動作は正常に行われています。
また、ワークシートのデーターベース上の登録ボタンも正常に行われています。
UserForm3での「生年月日→TextBox3」ではS(昭和)・T(大正)などで表示・入力したいのですが、設定が分からず、1978/7/28 という入力方式になっています。「年齢→TextBox4」は CommandButton3をクリックすることで、 「生年月日→TextBox3」から現在の年齢を計算して表示するところまで出来ています。
ただ、 「生年月日→TextBox3」も。「年齢→TextBox4」も、ワークシートのデーターベースに転記できていません。「生年月日→TextBox3」の転記は空白になっており、「年齢→TextBox4」の転記は######となっています。
以下がコード現在までに作ったコードになっております。
Private Sub UserForm3_Initialize()
Dim チェックボックス As Control
Dim 日
日 = Format(TextBox3, "yyyy/m/d")
TextBox1.Text = ""
TextBox2.Text = ""
TextBox6.Text = ""
TextBox9.Text = ""
OptionButton1.Value = True
OptionButton3.Value = True
For Each チェックボックス In Freme9.Controls
チェックボックス.Value = False
Next
For Each チェックボックス In Freme10.Controls
チェックボックス.Value = False
Next
End Sub
Private Sub CommandButton3_Click()
With Me.TextBox3
If Not IsDate(.Value) Then Exit Sub
Me.TextBox4.Value = Application.Evaluate("DATEDIF(""" _
& CDate(.Value) & """,TODAY(),""Y"")")
End With
End Sub
Private Sub CommandButton1_Click()
Dim z As Long
Dim 確認 As Integer
確認 = MsgBox("データーを登録します。" & "よろしいですか?", vbYesNo)
If 確認 <> vbYes Then Exit Sub
z = Range("データーベース!A4").CurrentRegion.Rows.Count
Range("データーベース!A" & z + 4).Offset(0, 0).Value = TextBox1.Text
Range("データーベース!A" & z + 4).Offset(0, 1).Value = TextBox2.Text
Range("データーベース!A" & z + 4).Offset(0, 8).Value = TextBox6.Text
Range("データーベース!A" & z + 4).Offset(0, 4).Value = 日
Range("データーベース!A" & z + 4).Offset(0, 5).Value = TextBox4.Text
Range("データーベース!A" & z + 4).Offset(0, 7).Value = TextBox9.Text
If OptionButton1.Value = True Then
Range("データーベース!A" & z + 4).Offset(0, 2).Value = "男性"
Else
Range("データーベース!A" & z + 4).Offset(0, 2).Value = "女性"
End If
If OptionButton3.Value = True Then
Range("データーベース!A" & z + 4).Offset(0, 5).Value = "入院"
Else
Range("データーベース!A" & z + 4).Offset(0, 5).Value = "外来"
End If
If CheckBox1.Value = True Then _
Range("データーベース!A" & z + 4).Offset(0, 9).Value = "運動器"
If CheckBox2.Value = True Then _
Range("データーベース!A" & z + 4).Offset(0, 9).Value = "脳血管"
If CheckBox3.Value = True Then _
Range("データーベース!A" & z + 4).Offset(0, 9).Value = "呼吸器"
If CheckBox4.Value = True Then _
Range("データーベース!A" & z + 4).Offset(0, 9).Value = "心大血管"
If CheckBox5.Value = True Then _
Range("データーベース!A" & z + 4).Offset(0, 9).Value = "手技消炎"
If CheckBox6.Value = True Then _
Range("データーベース!A" & z + 4).Offset(0, 9).Value = "器具消炎"
If CheckBox9.Value = True Then _
Range("データーベース!A" & z + 4).Offset(0, 11).Value = "終了"
If CheckBox10.Value = True Then _
Range("データーベース!A" & z + 4).Offset(0, 11).Value = "中止"
If CheckBox11.Value = True Then _
Range("データーベース!A" & z + 4).Offset(0, 11).Value = "転院・入所"
If CheckBox12.Value = True Then _
Range("データーベース!A" & z + 4).Offset(0, 11).Value = "死亡退院"
Unload UserForm3
End Sub
Private Sub CommandButton2_Click()
Unload UserForm3
End Sub
Private Sub UserForm_Click()
End Sub
|
|