回答編集履歴

2

三項演算子の記述誤り

2016/01/29 02:54

投稿

sk_3122
sk_3122

スコア1126

test CHANGED
@@ -72,7 +72,7 @@
72
72
 
73
73
  If A = 0 Then
74
74
 
75
- error01 &= IIf(error01 <> ",", "") & "A"
75
+ error01 &= IIf(error01 <> "", ",", "") & "A"
76
76
 
77
77
  End If
78
78
 
@@ -84,11 +84,11 @@
84
84
 
85
85
  ```VB
86
86
 
87
- If A = 0 Then error01 &= IIf(error01 <> ",", "") & "A"
87
+ If A = 0 Then error01 &= IIf(error01 <> "", ",", "") & "A"
88
88
 
89
- If B = 0 Then error01 &= IIf(error01 <> ",", "") & "B"
89
+ If B = 0 Then error01 &= IIf(error01 <> "", ",", "") & "B"
90
90
 
91
- If C = 0 Then error01 &= IIf(error01 <> ",", "") & "C"
91
+ If C = 0 Then error01 &= IIf(error01 <> "", ",", "") & "C"
92
92
 
93
93
  ```
94
94
 

1

三項演算子版 追記

2016/01/29 02:54

投稿

sk_3122
sk_3122

スコア1126

test CHANGED
@@ -53,3 +53,43 @@
53
53
  それからエラー文字列を追加していきます。
54
54
 
55
55
  どうですかね。
56
+
57
+
58
+
59
+ ----------
60
+
61
+
62
+
63
+ 【追記】
64
+
65
+
66
+
67
+ VBA も三項演算子 使えるのか。そっちのほうがすっきりしますかね。
68
+
69
+
70
+
71
+ ```VB
72
+
73
+ If A = 0 Then
74
+
75
+ error01 &= IIf(error01 <> ",", "") & "A"
76
+
77
+ End If
78
+
79
+ ```
80
+
81
+ 本当に例示のように、変数の桁数が揃ってるなら、このくらいの長さなら一行で書いちゃいますかね 私なら。
82
+
83
+ 変数名の桁数が異なるようだとガタガタして見辛い気がしますが。
84
+
85
+ ```VB
86
+
87
+ If A = 0 Then error01 &= IIf(error01 <> ",", "") & "A"
88
+
89
+ If B = 0 Then error01 &= IIf(error01 <> ",", "") & "B"
90
+
91
+ If C = 0 Then error01 &= IIf(error01 <> ",", "") & "C"
92
+
93
+ ```
94
+
95
+ (VB ではこの書き方ができますが、VBA はどうだろう)