Excel VBA質問箱 IV

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

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


55494 / 76738 ←次へ | 前へ→

【26018】Re:表の参照方法について
回答  かみちゃん  - 05/6/21(火) 22:25 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>そうすると、A-1B-1というような文字列ができます。
>
>  A  B  C  D  E   F
>1      C-1 D-1 E-1
>2 A-1 B-1  X  Y  Z  A-1B-1
>というような感じです。(ここでは、F列が作業例です)
>
>それを検索して、一致したら行番号を取得します。
>次に列見出しの中からC-1、D-1、E-1を探して列番号を取得します。
>取得された行番号、列番号のセルの値が取得したい値
>ということになるのではないでしょうか?
>Find メソッドを使えばできるような気がしますので、一度ヘルプなどで調べてみてください。

F列に作業列を作ってあることを前提にですが、次のようなコードでできましたので、参考にしてみてください。
Option Explicit
Sub Macro1()
 Dim TargetValue1 As String
 Dim TargetValue2 As String
 Dim TargetValue3 As String
 Dim c As Range
 Dim RowNo As Long
 Dim ColumnNo As Integer

 '検索する文字列(実際には、セルの値?)
 TargetValue1 = "A-1"
 TargetValue2 = "B-3"
 TargetValue3 = "D-1"

 '行見出しの作業列(F列)を検索
 RowNo = 0
 With Columns(6)
  Set c = .Find(TargetValue1 & TargetValue2, LookIn:=xlValues)
  If Not c Is Nothing Then
   '見つかったら行番号を取得
   RowNo = c.Row
  End If
 End With
 
 '列見出し(1行)を検索
 ColumnNo = 0
 With Rows(1)
  Set c = .Find(TargetValue3, LookIn:=xlValues)
  If Not c Is Nothing Then
   '見つかったら列番号を取得
   ColumnNo = c.Column
  End If
 End With
 
 '行番号、列番号ともに取得できたら
 If RowNo > 0 And ColumnNo > 0 Then
  '検索結果の取得
  MsgBox TargetValue1 & " And " & _
       TargetValue2 & " And " & _
        TargetValue3 & " の検索結果は " & _
         Cells(RowNo, ColumnNo).Value
 Else
  MsgBox TargetValue1 & " And " & _
       TargetValue2 & " And " & _
        TargetValue3 & " に一致するものはありませんでした。"
 End If
End Sub
0 hits

【26013】表の参照方法について ななこ 05/6/21(火) 20:19 質問
【26014】Re:表の参照方法について かみちゃん 05/6/21(火) 20:30 発言
【26015】Re:表の参照方法について ななこ 05/6/21(火) 20:42 回答
【26016】Re:表の参照方法について かみちゃん 05/6/21(火) 21:08 発言
【26017】Re:表の参照方法について ななこ 05/6/21(火) 21:18 お礼
【26018】Re:表の参照方法について かみちゃん 05/6/21(火) 22:25 回答

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