Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


10421 / 13646 ツリー ←次へ | 前へ→

【21943】if the else構文でエラーが出る。 モコ2 05/2/4(金) 14:30 質問[未読]
【21945】Re:if the else構文でエラーが出る。 ぴかる 05/2/4(金) 15:46 回答[未読]
【21951】Re:if the else構文でエラーが出る。 sa 05/2/4(金) 17:18 発言[未読]
【21955】Re:if the else構文でエラーが出る。 モコ2 05/2/4(金) 18:15 発言[未読]
【21960】Re:if the else構文でエラーが出る。 モコ2 05/2/4(金) 19:43 お礼[未読]

【21943】if the else構文でエラーが出る。
質問  モコ2  - 05/2/4(金) 14:30 -

引用なし
パスワード
   if then else 構文を使って条件分岐のプログラムを作っているのですが。
かつては問題なかったのに、久しぶりにプログラムしてみると、「elseに対するifがありません。」というエラーが出ます。
特に思い当たることは無いのですが、何かの設定が変わったのかなとも考えています。分かる方がいらしたら教えて下さい。

【21945】Re:if the else構文でエラーが出る。
回答  ぴかる  - 05/2/4(金) 15:46 -

引用なし
パスワード
   モコ2さん、こんにちは。

あたくしの経験上、For〜Next等とかの抜けが有ってもその様になったんじゃないかなと思います。If分以外の構文ミスも探してみて下さい。違ってたら、ゴメンナサイです。

【21951】Re:if the else構文でエラーが出る。
発言  sa  - 05/2/4(金) 17:18 -

引用なし
パスワード
   モコ2 さん:
他ブックのデータ抽出の中で
下記のソースを載せてられましたが
If IsError(kekka) Then MsgBox "無い" の行は、
if(条件)then(処理) で、一行完結になり
その後のELSEやENDIFに対するifが無い事になります

If(条件1)then
 (処理1)
ElseIF(条件2)then
 (処理2)
Else
 (処理3)
End If

と違うので注意必要です
Jakaと重なってすみません


↓↓↓例のソース↓↓↓↓

'********************
Sub test1()
'********************
Dim kekka As Object

kekka = Application.Match("山本 太郎", Workbooks("会員名簿.xls"). _
Sheets("新規会員").Columns(9), 0)

If IsError(kekka) Then MsgBox "無い"
Else
MsgBox kekka & "行目に有り"
End If

End Sub

【21955】Re:if the else構文でエラーが出る。
発言  モコ2  - 05/2/4(金) 18:15 -

引用なし
パスワード
   納得できました。
何度も使っていた構文なのにthenに続けてコードを書いても結果は同じと思い込んでいたようです。
ありがとうございました。

【21960】Re:if the else構文でエラーが出る。
お礼  モコ2  - 05/2/4(金) 19:43 -

引用なし
パスワード
   エラーの理由が分かりました。
if ・・・then
の後ろにコードを続けていたためにElse以下が別なステートメントとして判断されたようです。改行しないでも結果は同じであろうとの思い込みだったようです。
お答えありがとうございました。

10421 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free