2017-10-20 12 views
0

愚かな質問:このコードは正しくコンパイルされていません。私はちょうど何か愚かな行方不明だと感じている。ここでは、関連するコードがあります:次の理由なし - エラー

For Each Cell In CHWAssigned 
    If Cell = "" Then 
     If Cell.Row Mod 3 = 0 Then 
      Cell.Value = "DM" 
     ElseIf Cell.Row Mod 3 = 1 Then 
      Cell.Value = "CWS" 
     ElseIf Cell.Row Mod 3 = 2 Then 
      Cell.Value = "CF" 
    Else 
    End If 
Next Cell 

私がもし文のすべてを閉鎖したと思うが、開いてそこに1がなければなりません。とてもシンプルなものに取り組む時間をとってくれてありがとう。

+4

あなたは2つのIfを持っていますが、1つしかEnd If ... – SJR

+0

最後の 'ElseIf'を閉じていないと、コントロールは親' If'ブロック内の 'Else'に落ちます。 –

+0

パーフェクト、ありがとう!あなたがコメントしたときにちょうど気づいた –

答えて

1

あなたがいなくて、終了すれば、あなたのコードは今すぐ動作するはずです。 NextステートメントにCellを指定する必要はありません。 ElseIfの代わりにCaseを使用することもできます。

For Each Cell In CHWAssigned 
    If Cell = "" Then 
     If Cell.Row Mod 3 = 0 Then 
      Cell.Value = "DM" 
     ElseIf Cell.Row Mod 3 = 1 Then 
      Cell.Value = "CWS" 
     ElseIf Cell.Row Mod 3 = 2 Then 
      Cell.Value = "CF" 
     End If 
    End If 
Next 

希望します。

関連する問題