Excel VBA質問箱 IV

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

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


3760 / 76735 ←次へ | 前へ→

【78604】Re:VLOOKUPを使いたい
質問  もよもと  - 16/11/28(月) 0:57 -

引用なし
パスワード
   ▼もよもと さん:
>▼佳 さん:
>>こんにちは。
>>
>>なんか、あぶなっかしいですね。
>>VBAを使っても、想定外の使い方をされて 誤ったデータが完成・流通
>>してしまいそうな不安があります。
>>
>>入力用のシート(B列とC〜E列に入力)と、出力用のシート(関数を仕込み、
>>保護を掛けてある)を別にするのはどうですか。
>>
>>
>>▼もよもと さん:
>>>▼β さん:
>>>>▼もよもと さん:
>>>>
>>>>横から失礼します。
>>>>
>>>>>万一手動入力後に取り消ししようとして、関数を消されるとマズイので。
>>>>
>>>>変更されたくないセルに対しては、セルに保護をかけでシートを保護しておくのが
>>>>エクセル利用の常道だと思いますが?
>>>>
>>>>(セル保護は初期値すべてかかっていますので、実際には、全セルの保護を解除して
>>>> あらためて、変更禁止せルに保護を設定した上でシート保護になりますが)
>>>
>>>
>>>βさん
>>>
>>>関数は変更されたくないのですが、そのセルに手動で値は入れたいのです。
>>>また、入力セルは200×10程度あり、その全てに関数を入れると重くなるので。
>
>佳さん
>
>その手もアリですね。
>トライしてみます。

下記のコードでなんとかイメージ通りに出来ましたが、
エラー回避のためにOn Error Gotoを入れると、エラーで
ないものまでエラー判定されてしまい、困っています。
どうしたら、よろしいでしょうか。

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim rng As Range
  Dim r  As Range
  Set rng = Intersect(Target, Range("$E$8:$E$200"))
  If Not rng Is Nothing Then
  Application.EnableEvents = False
    For Each r In rng
      If r.Value <> "" Then
        r.Offset(, 2).Value = Application.WorksheetFunction.VLookup(r, Sheets("Sheet2").Range("$B$3:$I$200"), 2, False)
        r.Offset(, 3).Value = Application.WorksheetFunction.VLookup(r, Sheets("Sheet2").Range("$B$3:$I$200"), 3, False)
        r.Offset(, 4).Value = Application.WorksheetFunction.VLookup(r, Sheets("Sheet2").Range("$B$3:$I$200"), 4, False)
      Else
        r.Offset(, 2).ClearContents
        r.Offset(, 3).ClearContents
        r.Offset(, 4).ClearContents
      End If
    Next
    Application.EnableEvents = True
    Set rng = Nothing
  End If
End Sub

1 hits

【78592】VLOOKUPを使いたい もよもと 16/11/23(水) 22:00 質問[未読]
【78593】Re:VLOOKUPを使いたい γ 16/11/23(水) 22:06 発言[未読]
【78594】Re:VLOOKUPを使いたい もよもと 16/11/24(木) 5:57 発言[未読]
【78595】Re:VLOOKUPを使いたい γ 16/11/24(木) 7:17 発言[未読]
【78596】Re:VLOOKUPを使いたい もよもと 16/11/24(木) 7:35 お礼[未読]
【78597】Re:VLOOKUPを使いたい β 16/11/24(木) 10:43 発言[未読]
【78598】Re:VLOOKUPを使いたい もよもと 16/11/24(木) 12:33 発言[未読]
【78599】Re:VLOOKUPを使いたい 16/11/24(木) 13:54 発言[未読]
【78600】Re:VLOOKUPを使いたい もよもと 16/11/24(木) 15:05 お礼[未読]
【78604】Re:VLOOKUPを使いたい もよもと 16/11/28(月) 0:57 質問[未読]
【78605】Re:VLOOKUPを使いたい γ 16/11/28(月) 7:35 発言[未読]
【78607】Re:VLOOKUPを使いたい もよもと 16/11/28(月) 10:10 お礼[未読]
【78608】Re:VLOOKUPを使いたい β 16/11/28(月) 12:51 発言[未読]
【78609】Re:VLOOKUPを使いたい もよもと 16/11/28(月) 15:29 お礼[未読]

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