Meningkatkan fungsi VLOOKUP

Konten

Bagaimana cara mengemas parasut dengan benar?

Keuntungan. Edisi 2, direvisi.

Katakanlah kita memiliki tabel pesanan berikut:

Meningkatkan fungsi VLOOKUP

Kita perlu tahu, misalnya, berapa jumlah pesanan ketiga Ivanov atau kapan Petrov mengeksekusi kesepakatan keduanya. Fungsi VLOOKUP bawaan hanya dapat mencari kemunculan pertama dari nama belakang dalam tabel dan tidak akan membantu kami. Pertanyaan seperti “Siapa manajer nomor pesanan 10256?” juga akan tetap tidak terjawab, tk. VLOOKUP bawaan tidak dapat mengembalikan nilai dari kolom di sebelah kiri pencarian.

Kedua masalah ini diselesaikan dalam satu gerakan – mari kita tulis fungsi kita sendiri yang tidak hanya akan mencari yang pertama, tetapi, dalam kasus umum, untuk kejadian ke-N. Selain itu, ia akan dapat mencari dan menghasilkan hasil di kolom mana pun. Sebut saja, katakanlah, VLOOKUP2. 

Buka Editor Visual Basic dengan menekan ALT+F11 atau dengan memilih dari menu Layanan – Makro – Editor Visual Basic (Alat — Makro — Editor Visual Basic), masukkan modul baru (menu Sisipkan – Modul) dan salin teks fungsi ini di sana:

Fungsi VLOOKUP2(Table As Variant, SearchColumnNum As Long, SearchValue As Variant, _ N As Long, ResultColumnNum As Long) Dim i As Long, iCount As Long Select Case TypeName(Table) Case "Range" For i = 1 To Table.Rows .Count If Table.Cells(i, SearchColumnNum) = SearchValue Then iCount = iCount + 1 End If If If iCount = N Then VLOOKUP2 = Table.Cells(i, ResultColumnNum) Exit For End If Next i Case "Variant()" For i = 1 Ke UBound(Table) If Table(i, SearchColumnNum) = SearchValue Then iCount = iCount + 1 If iCount = N Then VLOOKUP2 = Table(i, ResultColumnNum) Exit For End If Next i End Pilih End Function  

Tutup Editor Visual Basic dan kembali ke Excel.

Sekarang melalui Sisipkan – Fungsi (Sisipkan — Fungsi) dalam kategori Ditetapkan pengguna (Ditetapkan pengguna) Anda dapat menemukan fungsi VLOOKUP2 kami dan menggunakannya. Sintaks fungsinya adalah sebagai berikut:

=VLOOKUP2(tabel; number_of_column_where_we mencari; lookup_value; N; number_of_column_from_to_get_value)

Sekarang keterbatasan fungsi standar bukanlah halangan bagi kami:

Meningkatkan fungsi VLOOKUP

PS Terima kasih khusus kepada The_Prist untuk meningkatkan fungsi sehingga dapat mencari di buku tertutup.

  • Menemukan dan mengganti data dari satu tabel ke tabel lainnya menggunakan fungsi VLOOKUP
  • "VLOOKUP Kiri" menggunakan fungsi INDEX dan MATCH

 

Tinggalkan Balasan