Excel VBA質問箱 IV

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

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


46007 / 76732 ←次へ | 前へ→

【35706】Re:複数条件に当てはまる時に値を返す
質問  青たん  - 06/3/10(金) 17:48 -

引用なし
パスワード
   ▼Kein さん:
早々のご回答ありがとうございます。
試してみたのですが、コンパイルエラーになり、
Elseに対応するIFがありません。と出ました;;
少し少なくして下記で作ってみたのですが、、、
後、条件を満たすセルを3つ作るとすると、どのような記述になるのでしょうか?
仮にA2に、みかんとりんごがあるという過程でお願いします。
お手数かけますがご回答のほどよろしくお願いします。

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim x As Long, y As Long, z As Long

  If Intersect(Target, Range("A1:B1")) Is _
  Nothing Then Exit Sub
  x = Range("C1").Value
  With Target
   If .Count > 1 Then Exit Sub
   If .Address = "$A$1" Then
     Select Case .Value
      Case "ピーマン"
        Select Case .Offset(, 1).Value
          Case "静岡": y = 5: z = 2
          Case "東京": y = 5: z = 2
                  End Select
        Select Case .Offset(, 1).Value
       Case "きゃべつ"
       Case "静岡": y = 5: z = 2
      Case "東京": y = 5: z = 2
      End Select
   ElseIf .Address = "$B$1" Then
     Select Case .Value
      Case "東京"
        Select Case .Offset(, -1).Value
          Case "きゃべつ": y = 5: z = 2
          Case "ピーマン": y = 5: z = 2
                  End Select
        Select Case .Offset(, -1).Value
       Case "静岡"
       Case "きゃべつ": y = 5: z = 2
      Case "ピーマン": y = 5: z = 2
      End Select
   End If
  End With
  With Application
   .EnableEvents = False
   Range("C3").Value = x * (y / z)
   .EnableEvents = True
  End With
End Sub

0 hits

【35695】複数条件に当てはまる時に値を返す 青たん 06/3/10(金) 15:15 質問
【35697】Re:複数条件に当てはまる時に値を返す 青たん 06/3/10(金) 15:27 質問
【35702】Re:複数条件に当てはまる時に値を返す Kein 06/3/10(金) 16:20 回答
【35706】Re:複数条件に当てはまる時に値を返す 青たん 06/3/10(金) 17:48 質問
【35715】Re:複数条件に当てはまる時に値を返す Kein 06/3/10(金) 20:36 回答
【35728】Re:複数条件に当てはまる時に値を返す 青たん 06/3/11(土) 10:41 お礼
【35731】再びすみません。 青たん 06/3/11(土) 12:20 質問
【35732】Re:再びすみません。 Kein 06/3/11(土) 15:13 回答
【35736】Re:再びすみません。 青たん 06/3/11(土) 16:27 お礼

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