teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

推敲

2020/02/19 09:06

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -13,7 +13,7 @@
13
13
  Me.txtPass.SetFocus
14
14
  End If
15
15
  ```
16
- 分岐が多いなら、[Select Case ステートメント](https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/select-case-statement?f1url=https%3A%2F%2Fmsdn.microsoft.com%2Fquery%2Fdev11.query%3FappId%3DDev11IDEF1%26l%3Dja-JP%26k%3Dk(vblr6.chm1008810)%3Bk(TargetFrameworkMoniker-Office.Version%3Dv16)%26rd%3Dtrue)を使用するとすっきりします。
16
+ 分岐が多いなら、[Select Case ステートメント](https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/select-case-statement?f1url=https%3A%2F%2Fmsdn.microsoft.com%2Fquery%2Fdev11.query%3FappId%3DDev11IDEF1%26l%3Dja-JP%26k%3Dk(vblr6.chm1008810)%3Bk(TargetFrameworkMoniker-Office.Version%3Dv16)を使用するとすっきりします。
17
17
  ```VBA
18
18
  If Res = Me.txtPass Then
19
19
   Dim wフォーム名

1

追記

2020/02/19 09:06

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -12,4 +12,23 @@
12
12
  MsgBox "パスワードが異なります。", vbOKOnly + vbCritical
13
13
  Me.txtPass.SetFocus
14
14
  End If
15
+ ```
16
+ 分岐が多いなら、[Select Case ステートメント](https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/select-case-statement?f1url=https%3A%2F%2Fmsdn.microsoft.com%2Fquery%2Fdev11.query%3FappId%3DDev11IDEF1%26l%3Dja-JP%26k%3Dk(vblr6.chm1008810)%3Bk(TargetFrameworkMoniker-Office.Version%3Dv16)%26rd%3Dtrue)を使用するとすっきりします。
17
+ ```VBA
18
+ If Res = Me.txtPass Then
19
+  Dim wフォーム名
20
+ Select Case Me.txtID
21
+ case "AAA"
22
+ wフォーム名 = "A社フォーム"
23
+ case "BBB"
24
+ wフォーム名 = "B社フォーム"
25
+ case "CCC"
26
+ wフォーム名 = "C社フォーム"
27
+ End Select
28
+ DoCmd.OpenForm wフォーム名
29
+ DoCmd.Close acForm, "ログイン画面"
30
+ Else
31
+ MsgBox "パスワードが異なります。", vbOKOnly + vbCritical
32
+ Me.txtPass.SetFocus
33
+ End If
15
34
  ```