Excel VBA質問箱 IV

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

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


5170 / 76735 ←次へ | 前へ→

【77178】Re:一覧から参照
回答  γ  - 15/6/2(火) 20:53 -

引用なし
パスワード
   ▼☆Nonoka☆ さん:
>返信遅くなって申し訳ありません。
>関数ですとリストが増えるため、効率に限界があります。
限界があるとは、どのくらいの行数ですか?
実際に限界に達しているのですか?


ワークシートのイベント処理についてはこちらを参照。
ht  tp://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_event.html

------------
書き方の一例です。
これをSheet1のシートモジュールにコピーペイストしてから、
K列に入力してみてください。

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim v As Variant

  If Target.Count > 1 Then Exit Sub   ' 複数領域が同時に変更されたら終了
                     ' 逆に、複数領域についても対象にしたいなら、
                     ' 繰り返し処理を行います。(応用編はそちらで)
  If Target.Column <> 11 Then Exit Sub ' K列以外なら終了

  v = Application.VLookup(Target.Value, Worksheets("Sheet2").Range("B:C"), 2, False)
  If IsError(v) Then
    MsgBox Target.Value & " は見つかりませんでした"
  Else
    Application.EnableEvents = False
    Target.Offset(0, 1).Value = v
    Application.EnableEvents = True
  End If
 
End Sub

4 hits

【77146】一覧から参照 ☆Nonoka☆ 15/5/26(火) 16:18 質問[未読]
【77152】Re:一覧から参照 γ 15/5/27(水) 22:03 発言[未読]
【77177】Re:一覧から参照 ☆Nonoka☆ 15/6/2(火) 13:15 発言[未読]
【77178】Re:一覧から参照 γ 15/6/2(火) 20:53 回答[未読]

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