Excel VBA質問箱 IV

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

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


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

【62212】値選択後、セル移動。 まき子 09/7/1(水) 15:09 質問[未読]
【62213】Re:値選択後、セル移動。 つん 09/7/1(水) 15:19 回答[未読]
【62214】Re:値選択後、セル移動。 kanabun 09/7/1(水) 15:32 発言[未読]
【62215】Re:値選択後、セル移動。 kanabun 09/7/1(水) 15:39 発言[未読]
【62216】Re:値選択後、セル移動。 まき子 09/7/1(水) 17:03 お礼[未読]

【62212】値選択後、セル移動。
質問  まき子  - 09/7/1(水) 15:09 -

引用なし
パスワード
   XP Office2003
セル("A1:A20")に入力規則のドロップダウンリストで
「有、無、空欄」を選択する設定をしています。
『リスト値を選択後、下のセルをアクティブにする
(A1の値選択後、自動にA2がアクティブになる)』
これを"A1:A20"で行いたいのですが、Worksheet_Changeの書き方や、
もっとスマートな方法があれば教えてください。
よろしくお願いします。

Private Sub Worksheet_Change(ByVal Target As Range)

  If Target.Address = "$A$1" Then
    ActiveCell.Offset(1, 0).Select
  End If
  
  If Target.Address = "$A$2" Then
    ActiveCell.Offset(1, 0).Select
  End If
  
    ・
    ・
    ・
    ・
  
  If Target.Address = "$A$20" Then
    ActiveCell.Offset(1, 0).Select
  End If
End Sub

【62213】Re:値選択後、セル移動。
回答  つん  - 09/7/1(水) 15:19 -

引用なし
パスワード
   ▼まき子 さん
こんちは^^

Private Sub Worksheet_Change(ByVal Target As Range)

  If Target.Column = 1 And Target.Row < 21 Then
    Target.Offset(1, 0).Activate
  End If

End Sub

こんなんで、どうですか?

【62214】Re:値選択後、セル移動。
発言  kanabun  - 09/7/1(水) 15:32 -

引用なし
パスワード
   ▼まき子 さん:
おじゃまします。
こんなのはどうでしょうか?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If Not Intersect(Target, Range("A1:A20")) Is Nothing Then
    If IsEmpty(ActiveCell.Value2) Then
      SendKeys "%{DOWN}"
    End If
  End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim r As Range
  Dim c As Range
  Set r = Intersect(Target, Range("A1:A20"))
  If Not r Is Nothing Then
    ActiveCell.Offset(1).Select
  End If
End Sub

【62215】Re:値選択後、セル移動。
発言  kanabun  - 09/7/1(水) 15:39 -

引用なし
パスワード
   あ、、、↑うえの変数

' Dim c As Range

は不要でした m(__)m

【62216】Re:値選択後、セル移動。
お礼  まき子  - 09/7/1(水) 17:03 -

引用なし
パスワード
   つんさん kanabunさん ありがとうございます。

自分でも他に「なんとなくこんな感じか?」と組み立てていましたが
御二方の回答とは程遠いものでした(Do…Loopとか)www。

すっきりしました、勉強になりました。

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