dポイントプレゼントキャンペーン実施中!

下の表で(見づらくてスミマセン) 
    A   B  C  D  E  F  G  H  I  J  K
5   728  1  8  10  15  23  26  28  31  34  39
6   727  2  5   7  12  18  21  25  32  33  38
700行有ります。
 
 VBAでVLOOKUPを使用して上記の表を検索し、合致したセルのアドレスを取得し
別の場所に列C~Kを表示しようとしたのですが出来ませんでした。
例) 検索値が727ならC6~K6を別の場所に表示したいのです。

他の方法も試して見ましたが上手くいきません。
どなたか教えて戴けませんでしょうか、宜しくお願い致します。

A 回答 (2件)

シートの具体的なセルの位置が不明なのと、別の場所がどこなのかが不明なので、具体的なマクロは示せませんが、


単純にA列の値が727かどうかを上の行から下の行へ順に比較して、727ならその行のC列からK列を別の場所にコピーすればよいかと。
    • good
    • 0
この回答へのお礼

説明不足ですみません、ありがとう御座います。

お礼日時:2017/10/04 13:19

VLOOKUPは、値を出すものでセルのオブジェクトを指定するものではありませんから、使えないはずです。



'//
Sub Find_Copy()
Dim sTxt As String
Dim c As Range

sTxt = 727 '検索値

With ActiveSheet
 Set c = ActiveSheet.Columns(1).Find(sTxt, , xlValues, xlWhole, xlByRows)
 If Not c Is Nothing Then
   .Cells(c.Row, "C").Resize(, 9).Copy .Next.Range("A1") '右隣のシートのA1に写す
   Application.Goto .Next.Range("A1")
 Else
   MsgBox sTxt & "は、見つかりませんでした。", vbExclamation
 End If
End With
End Sub
    • good
    • 0
この回答へのお礼

説明不足なのにお答えありがとう御座います。
同一シート内で
DZ3,ES3,FL3,GE3,GX3,DZ51,ES51,GE51,GX51,DZ51に検索値が関数で表示されます(数値は不定)
検索範囲はA5~K733で、表示された検索数値のセルの右隣から9個表示したいのです。
(EA3~EI3、ET3~FB3…EA51~EI51というふうにです、検索エラーに成る事はありません)

お礼日時:2017/10/04 13:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!