2016-10-15 2 views
0

ルックアップ機能を新しく導入しました。私は要件を持っている、誰かがこれを実装する方法について私に助けてくれますか? inputFileExcelでは、ルックアップ値のセットに対するルックアップ関数の実装

エクセルシートでは、列Cに商品(書籍、帽子など)があります。列Dには、商品に応じた価格があります。列Cの項目を繰り返すことができます。

私がしたいのは、新しい列(たとえばF)では、列Cの項目を列挙したい(列Cの繰り返し項目は無視する必要があります)。列Fでは、アイテムの価格(繰り返しアイテムを含む)。入力の場合

「input.png」を参照してくださいと予想される出力のためにしてください検索以外のExcelの任意の関数がある場合、でもそれは結構ですexpected.png

を「expected.png」をご参照ください。

私をご案内ください。

+0

WorksheetFunction SumIfとはうまく動作します。参考:[Excel Magic Trick#13:特定のアイテムのみをSUMまたはCOUNTする! SUMIF COUNTIFの機能](https://www.youtube.com/watch?v=Md9UefuOFAQ) –

答えて

0

あなたはこのように行くことができる:

Option Explicit 

Sub main() 
    Dim itemsRng As Range 

    With Worksheets("Items") '<-- change "Comparisons" to your actual sheet name 
     Set itemsRng = .Range("C5", .Cells(.Rows.Count, "C").End(xlUp)) 
     With .Range("F5").Resize(itemsRng.Rows.Count) 
      .Value = itemsRng.Value 
      .RemoveDuplicates Columns:=Array(1) 
     End With 
     With .Range("F5", .Cells(.Rows.Count, "F").End(xlUp)).Offset(, 1) 
      .FormulaR1C1 = "=SUMIF(" & itemsRng.Address(True, True, xlR1C1) & ",RC[-1]," & itemsRng.Offset(, 1).Address(True, True, xlR1C1) & ")" 
      .Value = .Value 
     End With 
    End With 
End Sub 
+0

@toLearn、あなたはそれを通過しましたか? – user3598756

関連する問題