Excel VBA質問箱 IV

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

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


9410 / 13644 ツリー ←次へ | 前へ→

【27516】IF文の質問です。 yuu 05/8/10(水) 18:10 質問[未読]
【27520】Re:IF文の質問です。 りん 05/8/10(水) 18:41 回答[未読]

【27516】IF文の質問です。
質問  yuu  - 05/8/10(水) 18:10 -

引用なし
パスワード
   以下のようにIF文を組み、Cell(i,59)とCell(i,68)に値がある場合には以下のように3を表示したいと考え、以下のようにプログラムを組みましたが、3が表示されず、結果は2が返ります。どうすればいいのでしょうか? 
If Sheets("TEST").Cells(i, 68) <> 0 Then
  Cells(e, 12).Value = "2"
  ElseIf Sheets("TEST").Cells(i, 59) And Sheets("TEST").Cells(i, 68) <> 0 Then
  Cells(e, 12).Value = "3"
  Else
  Cells(e, 12).Value = ""
  End If

【27520】Re:IF文の質問です。
回答  りん E-MAIL  - 05/8/10(水) 18:41 -

引用なし
パスワード
   ▼yuu さん:
>以下のようにIF文を組み、Cell(i,59)とCell(i,68)に値がある場合には以下のように3を表示したいと考え、以下のようにプログラムを組みましたが、3が表示されず、結果は2
が返ります。どうすればいいのでしょうか? 

>If Sheets("TEST").Cells(i, 68) <> 0 Then
  ↓Cells(i,68)に値が入っているとここで完結しています 
>  Cells(e, 12).Value = "2"
>  ElseIf Sheets("TEST").Cells(i, 59) And Sheets("TEST").Cells(i, 68) <> 0 Then
>  Cells(e, 12).Value = "3"
>  Else
>  Cells(e, 12).Value = ""
>  End If

こういう分岐ですかね。

  With Sheets("TEST")
   If .Cells(i, 68).Value <> 0 Then
     If .Cells(i, 59).Value <> 0 Then
      Cells(e, 12).Value = 2 '両方ゼロでない
     Else
      Cells(e, 12).Value = 3 '.Cells(i, 59).Valueがゼロ
     End If
   Else
     Cells(e, 12).Value = "" '.Cells(i, 68).Valueがゼロ
   End If
  End With

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