2016-12-01 4 views
0

範囲からセルアドレスの文字を返すことができるExcelマクロが必要です。範囲からセルアドレスの文字を返す関数

たとえば、2つのワークシートがある場合は、ワークシート2で使用したいと思いますが、ワークシート1のセルの文字がわかります。 のような何か:

=レター(Sheet1のA1:!!Sheet1のD6; "猫"; "が見つかりません")。この場合、だから、

が、それはA1で "猫" で検索しています:D6それが見つかった場合は、それが見つからない場合は、 "C"のような値として文字を返します。

私はすでにそれを検索していくつかの類似点を見つけましたが、私は実際にVBAを知らず、何かを適応させることができませんでした。

誰かが私を助けることができますか?

+2

なぜですか?あなたは別の公式のためにその情報を使うつもりですか? –

+0

結果の列を意味する場合、なぜそれを行う必要がありますか? – Comintern

+0

はい、3番目のワークシートの間接式の場合。 したがって、基本的にはsheet1 = data、sheet2 = paths、sheet3 =基底テーブル、それ以外のものはすべてsheet3から構築されます – RedDot

答えて

1
Function Letter(Target As Range, Search As Variant, value_if_false As Variant) 
    Dim f As Range 
    Set f = Target.Find(Search, After:=Target.Cells(1), LookIn:=xlFormulas, LookAt:=xlWhole) 
    If f Is Nothing Then 
     Letter = value_if_false 
    Else 
     Letter = Split(f.Address(True, True), "$")(1) 
    End If 
End Function 
+0

ありがとうございます<3 – RedDot

関連する問題