Excel VBA質問箱 IV

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

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


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

【54621】VLookUpのコードで質問です Masato 08/3/24(月) 20:31 質問[未読]
【54623】Re:VLookUpのコードで質問です ichinose 08/3/24(月) 21:16 発言[未読]
【54629】Re:VLookUpのコードで質問です Masato 08/3/25(火) 7:06 お礼[未読]
【54667】Re:VLookUpのコードで質問です Masato 08/3/25(火) 19:00 お礼[未読]

【54621】VLookUpのコードで質問です
質問  Masato  - 08/3/24(月) 20:31 -

引用なし
パスワード
   VLookUpを使って
下のB列に表示させています。

   A    B         D    E
5 項目1    項目2        データ1    データ2
6  85     R        45    A
7  75     S        75    S
8  45  A        85    R
9  100     T        100    T
10  200     O        150    K
11  150     K        200    O

test1の内容を汎用性を持たせようとコードtest2を作成したのですが、エラーに
なります。出来ましたらアドバイスお願いできませんでしょうか。
宜しくお願いします。

Sub test1()
 With Worksheets("Sheet1")
  With .Range("B6:B11")
   .Formula = "=Vlookup(RC1,R6C4:R11C5,2,0)"
   .Value = .Value
  End With
 End With
End Sub

Sub test2()
 With Worksheets("Sheet1")
  LstR = .Range("E" & Rows.Count).End(xlUp).Row
  With .Range("B6:B" & .Range("A" & Rows.Count).End(xlUp).Row)
   .Formula = "=Vlookup($A6,D6:E" & LstR , 2 , 0)""
   .Value = .Value
  End With
 End With
End Sub

【54623】Re:VLookUpのコードで質問です
発言  ichinose  - 08/3/24(月) 21:16 -

引用なし
パスワード
   ▼Masato さん:
こんばんは。

>Sub test2()
 Dim rng As Range
 With Worksheets("Sheet1")
   Set rng = .Range("d6", .Cells(.Rows.Count, "d").End(xlUp)).Resize(, 2)
   With .Range("B6:B" & .Range("A" & Rows.Count).End(xlUp).Row)
    .Formula = "=Vlookup(" & .Offset(0, -1).Cells(1).Address(0, 0) _
        & "," & rng.Address & ", 2 , 0)"
    .Value = .Value
    End With
   End With
>End Sub

これでは?

【54629】Re:VLookUpのコードで質問です
お礼  Masato  - 08/3/25(火) 7:06 -

引用なし
パスワード
   ▼ichinose さん:
ご回答ありがとうございました。
よく理解できました。エクセルの関数の中の処理の理解が進まず
苦慮しておりました。
ありがとうございました。

【54667】Re:VLookUpのコードで質問です
お礼  Masato  - 08/3/25(火) 19:00 -

引用なし
パスワード
   ▼ichinose さん:

今晩は。
教えていただいたコードを見ながら、一点何とかできました。
ありがとうございました。

Dim LstR As Long   
 With Worksheets("Sheet1")
  LstR = .Range("E65536").End(xlUp).Row
  With .Range("B6:B" & .Range("A" & Rows.Count).End(xlUp).Row)
    .FormulaR1C1 = "=VLOOKUP(RC1,R6C4:R" & LstR & "C5,2,0)"
  End With
 End With

なんとか動作しました。ありがとうございました。

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