Excel VBA質問箱 IV

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

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


46027 / 76732 ←次へ | 前へ→

【35686】Re:セルのColorIndexでVlookupを選択
お礼  たけぞう  - 06/3/10(金) 11:04 -

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

回答ありがとうございます。頂いたリストで動きました。
登録したデータテーブルを呼び出すのに Names("table01").RefersToRangeとすれば良いのですね。当方ヘルプファイル自体の文法にまだ慣れていなく、皆さんの質問−回答を参考に作成しているので基本がなっていませんね。以後、努力していきます。

>でも、セルを塗りつぶした色を変えても関数は反応しませんが
>よいのですよね?
取込んでいるCELL_00の数値が変化し、それに伴い再計算されるので構いません。

参考にして正式Function作成しました。IF条件が不足していたのでANDで追加、検索型について、区分帯で検索しているので FalseからTrueに変えました。
下に示すそれで無事に計算が進められました。

Function R_SIZE_V(CELL_00 As Range, CELL_H As Range, _
            CELL_V As Range) As Variant
  Dim R_SIZE00 As Variant
  If (CELL_00.Interior.ColorIndex = 3 And CELL_00 <> CELL_H _
            And CELL_00 <> CELL_V) Then
    R_SIZE00 = Application.WorksheetFunction.VLookup(CELL_00, _
            Names("ユニット").RefersToRange, 7, True)
    R_SIZE_V = "(" + R_SIZE00 + ")"
  Else: R_SIZE_V = ""
  End If
End Function

>
>>配列の考え方が間違っており1セルには複数のデータを保管できないことがわかりました。そこでデータではなくセルの色等を条件にすればと思い以下のマクロを作成しました。
>>A1に数値を入力、D4:F8をtable01と登録し、B1に =Test_VLook(A1)を入力しましたが、#VALUE!のエラーが出てしまいます。どのように修正すればよいのでしょうか。
>セル範囲D4:F8を名前の登録でtable01という名前を付けたということですか?
>
>
>>実際には =Test_VLook()の入るセルは多数あります。また出来るだけ別シート等は作成したくないのでこのような方法を考えました。
>>回答宜しくお願いします。
>>
>Function Test_VLook(CELL_A1 As range) as variant
>
>>  If CELL_A1.Interior.ColorIndex = 3 Then
>    Test_VLook = Application.WorksheetFunction _
>        .VLookup(CELL_A1, Names("table01").RefersToRange, 2,false)
>>  ElseIf CELL_A1.Interior.ColorIndex = 5 Then
>    Test_VLook = Application.WorksheetFunction _
>        .VLookup(CELL_A1, Names("table01").RefersToRange, 3,false)
>>  Else: Test_VLook = ""
>>  End If
>>End Function
>
>でよいと思いますが・・・。
>
>でも、セルを塗りつぶした色を変えても関数は反応しませんが
>よいのですよね?

11 hits

【35635】引数に配列を使った計算 たけぞう 06/3/8(水) 20:28 質問
【35645】Re:引数に配列を使った計算 ichinose 06/3/8(水) 22:32 発言
【35652】Re:引数に配列を使った計算 たけぞう 06/3/9(木) 8:45 お礼
【35656】セルのColorIndexでVlookupを選択 たけぞう 06/3/9(木) 11:37 質問
【35669】Re:セルのColorIndexでVlookupを選択 ichinose 06/3/9(木) 19:49 発言
【35686】Re:セルのColorIndexでVlookupを選択 たけぞう 06/3/10(金) 11:04 お礼

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