Excel VBA質問箱 IV

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

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


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

【63828】一定の範囲からの検索 初心者 09/12/18(金) 11:11 質問[未読]
【63829】Re:一定の範囲からの検索 ぴかる 09/12/18(金) 11:49 発言[未読]
【63830】Re:一定の範囲からの検索 初心者 09/12/18(金) 12:12 質問[未読]
【63834】Re:一定の範囲からの検索 ぴかる 09/12/18(金) 16:15 発言[未読]
【63835】Re:一定の範囲からの検索 初心者 09/12/18(金) 17:09 お礼[未読]

【63828】一定の範囲からの検索
質問  初心者  - 09/12/18(金) 11:11 -

引用なし
パスワード
   ある範囲から、ある言葉が含まれているか調べて、あれば横の数値を取り出す。
というマクロを作りたいのですが、どうすればよいか困っております。



↓行列→ A     B     C     D     E  ・・・・
   製品コード  商品名    数量    単価  製品コード   ・・・
1   製品1   ガム     50    999.1   製品8 ・・・
2   製品4   アメ     60    888.2   製品15 ・・・
3   製品7   時計     70    777.3   製品3 ・・・
4   製品2   画面     80    666.4   製品5 ・・・


例えば、製品4の数量を調べて60と返す
    製品7の単価を調べて777.3と返す

ということをしたいとおもっております。

なお、E列からも同様に、
 製品コード、商品名、数量・・・
と入っており、同様に調べる必要があるような表になっています。


どうか、ご教授よろしくお願いします。

【63829】Re:一定の範囲からの検索
発言  ぴかる  - 09/12/18(金) 11:49 -

引用なし
パスワード
   初心者さん、こんにちは。

データを1列ずつにして、数式のVLOOKUP関数を使ってみるのが容易じゃないかと思います。

>ある範囲から、ある言葉が含まれているか調べて、あれば横の数値を取り出す。
>というマクロを作りたいのですが、どうすればよいか困っております。
>
>例
>
>↓行列→ A     B     C     D     E  ・・・・
>   製品コード  商品名    数量    単価  製品コード   ・・・
>1   製品1   ガム     50    999.1   製品8 ・・・
>2   製品4   アメ     60    888.2   製品15 ・・・
>3   製品7   時計     70    777.3   製品3 ・・・
>4   製品2   画面     80    666.4   製品5 ・・・
>
>
>例えば、製品4の数量を調べて60と返す
>    製品7の単価を調べて777.3と返す
>
>ということをしたいとおもっております。
>
>なお、E列からも同様に、
> 製品コード、商品名、数量・・・
>と入っており、同様に調べる必要があるような表になっています。
>
>
>どうか、ご教授よろしくお願いします。

【63830】Re:一定の範囲からの検索
質問  初心者  - 09/12/18(金) 12:12 -

引用なし
パスワード
   ▼ぴかる さん:

返答ありがとうございます。

vlookupでの検索というよりか、この表は、ある表の一部として
行列が8*8の表が入っている感じです。
なので、vlookupを使うとシート全体で検索してしまうので・・

できれば、指定の8*8(8行*H列)の表より、対象の語句がある部分の
指定の文字を検索し、表示するという感じにしたいのですが。。


>初心者さん、こんにちは。
>
>データを1列ずつにして、数式のVLOOKUP関数を使ってみるのが容易じゃないかと思います。
>
>>ある範囲から、ある言葉が含まれているか調べて、あれば横の数値を取り出す。
>>というマクロを作りたいのですが、どうすればよいか困っております。
>>
>>例
>>
>>↓行列→ A     B     C     D     E  ・・・・
>>   製品コード  商品名    数量    単価  製品コード   ・・・
>>1   製品1   ガム     50    999.1   製品8 ・・・
>>2   製品4   アメ     60    888.2   製品15 ・・・
>>3   製品7   時計     70    777.3   製品3 ・・・
>>4   製品2   画面     80    666.4   製品5 ・・・
>>
>>
>>例えば、製品4の数量を調べて60と返す
>>    製品7の単価を調べて777.3と返す
>>
>>ということをしたいとおもっております。
>>
>>なお、E列からも同様に、
>> 製品コード、商品名、数量・・・
>>と入っており、同様に調べる必要があるような表になっています。
>>
>>
>>どうか、ご教授よろしくお願いします。

【63834】Re:一定の範囲からの検索
発言  ぴかる  - 09/12/18(金) 16:15 -

引用なし
パスワード
   遅くなって申し訳ないです。こんな感じでしょうか?
検索文は、1つにしようと思ったのですが、怠けてしまいました。
今晩、飲み会ですのでこれにて失礼します。何かありましたら、
どなた様かフォロー願いますね。

Sub サンプル()

Dim 製品コード As String
Dim I As Integer
  
  製品コード = InputBox("製品コード入力をして下さい。", "製品コード")
  For I = 2 To 9
    If Cells(I, 1).Value = 製品コード Then
      MsgBox "製品コード【 " & 製品コード & " 】" & vbLf & _
          " 商品名…" & Cells(I, 2).Value & vbLf & _
          " 数量…" & Cells(I, 3).Value & vbLf & _
          " 単価…" & Cells(I, 4).Value, vbInformation, "【 検索結果 】"
      Exit Sub
    End If
  Next
  For I = 2 To 9
    If Cells(I, 5).Value = 製品コード Then
      MsgBox "製品コード【 " & 製品コード & " 】" & vbLf & _
          " 商品名…" & Cells(I, 6).Value & vbLf & _
          " 数量…" & Cells(I, 7).Value & vbLf & _
          " 単価…" & Cells(I, 8).Value, vbInformation, "【 検索結果 】"
      Exit Sub
    End If
  Next
  MsgBox "製品コード【 " & 製品コード & " 】は、有りません。", vbInformation, "【 検索結果 】"
  
End Sub

【63835】Re:一定の範囲からの検索
お礼  初心者  - 09/12/18(金) 17:09 -

引用なし
パスワード
   ▼ぴかる さん:

手掛かりが見えました。ありがとうございました。

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