Menggunakan fitur lain untuk mengidentifikasi tipe data yang ditautkan

Tipe data yang ditautkan dirilis dalamExcel untuk Office 365 pada 2018 Juni, dan dengan demikian, fitur lain mungkin tidak bisa mengidentifikasinya. Ini dapat sangat benar jika Anda ingin menggunakan fitur lain untuk mengidentifikasi secara bersyarat Apakah sebuah sel berisi tipe data yang ditautkan atau tidak. Artikel ini menjelaskan beberapa solusi yang bisa Anda gunakan untuk mengidentifikasi tipe data yang ditautkan dalam sel.

Rumus

Anda selalu dapat menulis rumus yang mereferensikan tipe data. Namun, jika Anda ingin mengekstrak teks dari sebuah sel dengan tipe data yang ditautkan dengan menggunakan fungsi TEXT, Anda akan mendapatkan #VALUE! .

Solusi adalah menggunakan fungsi fieldvalue dan menentukan bidang nama untuk argumen field_name . Dalam contoh berikut, jika sel A1 berisi tipe data saham, maka rumus akan mengembalikan nama stok.

= FIELDVALUE (A1, "nama")

Namun, jika sel A1 tidak berisi tipe data yang ditautkan, maka fungsi FIELDVALUE akan mengembalikan kesalahan #FIELD!. Jika Anda ingin mengevaluasi apakah sel berisi tipe data yang ditautkan atau tidak, Anda bisa menggunakan rumus berikut, yang menggunakan fungsi ISERROR untuk menguji apakah fungsi FIELDVALUE akan mengembalikan kesalahan.

= IF (ISERROR (FIELDVALUE (A2, "nama")), "sel ini tidak memiliki tipe data tertaut", "sel ini memiliki tipe data yang ditautkan")

Jika rumus mengevaluasi kesalahan, maka akan mengembalikan teks "sel ini tidak memiliki tipe data yang ditautkan", jika tidak, akan mengembalikan "sel ini memiliki tipe data yang ditautkan".

Jika Anda hanya ingin menekan #FIELD! kesalahan, Anda bisa menggunakan:

= IFERROR (FIELDVALUE (A1, "nama"), "")

Yang akan mengembalikan sel kosong jika ada kesalahan.

Pemformatan bersyarat

Anda dapat memformat sel secara bersyarat berdasarkan tipe data yang ditautkan atau tidak. Anda terlebih dahulu memilih sel yang memerlukan pemformatan bersyarat, lalu masuk ke beranda > pemformatan bersyarat > aturan baru > menggunakan rumus... Untuk rumus, Anda akan menggunakan hal berikut:

= NOT (ISERROR (FIELDVALUE (A1, "nama")))

Di mana sel A1 adalah sel teratas dalam rentang yang ingin Anda evaluasi. Lalu Terapkan format yang Anda inginkan.

Dalam contoh ini, jika sel A1 berisi nama bidang yang valid untuk "nama", maka rumus mengembalikan TRUE dan pemformatan akan diterapkan. Jika sel A1 tidak berisi tipe data yang ditautkan, maka rumus mengembalikan FALSE, dan tidak ada pemformatan yang akan diterapkan. Anda dapat menghapus NOT jika Anda ingin menyoroti sel yang tidak berisi tipe data tertaut yang valid.

VBA

Ada beberapa metode VBA (Visual Basic for Applications) yang bisa Anda gunakan untuk mengidentifikasi apakah sel atau rentang berisi tipe data tertaut. Prosedur pertama ini menggunakan properti Hasrichdatatype

Kedua prosedur ini akan meminta Anda memilih rentang sel untuk dievaluasi, lalu kembalikan kotak pesan dengan hasilnya.

Sub IsLinkedDataType()
    Dim c As Range
    Dim rng As Range
    Dim strResults As String
    
    Set rng = Application.InputBox("Select a range to check for linked data types", Type:=8)
    
    For Each c In rng
      '    Check if the HasRichDataType is TRUE or FALSE
        If c.HasRichDataType = True Then
        '   The cell holds a linked data type
            strResults = strResults & c.Text & " - Linked data type" & vbCrLf
        Else
            strResults = strResults & c.Text & " - Not a linked data type" & vbCrLf
        End If
    Next c

    MsgBox "Your range contains the following details" & vbCrLf & vbCrLf & strResults, vbInformation + vbOKOnly, "Results"
    
End Sub

Prosedur berikut ini menggunakan properti Linkeddatatypestate.

Sub IsLinkedDataTypeState()
    Dim c As Range
    Dim rng As Range
    Dim strResults As String
    
    Set rng = Application.InputBox("Select a range to check for linked data types", Type:=8)
    
    For Each c In rng
   '    Check if the LinkedDataTypeState is 1 (TRUE) or 0 (FALSE)
        If c.LinkedDataTypeState = 1 Then
        '   The cell holds a linked data type
            strResults = strResults & c.Text & " - Linked data type" & vbCrLf
        Else
            strResults = strResults & c.Text & " - Not a linked data type" & vbCrLf
        End If
    Next c
    
   MsgBox "Your range contains the following details" & vbCrLf & vbCrLf & strResults, vbInformation + vbOKOnly, "Results"

End Sub

Potongan kode akhir ini adalah fungsi yang ditentukan pengguna (UDF), dan Anda mereferensikan sama seperti rumus Excel lainnya. Cukup masukkan =fn_IsLinkedDataType (A1), di mana A1 adalah sel yang ingin Anda evaluasi.

Public Function fn_IsLinkedDataType(c As Range)
'   Function will return TRUE if a referenced cell contains a linked data type
    If c.HasRichDataType = True Then
      fn_IsLinkedDataType = "Linked data type"
    Else
        fn_IsLinkedDataType = "Not a linked data type"
    End If
End Function

Untuk menggunakan salah satu contoh ini, tekan ALT + F11 untuk membuka Editor Visual Basic (VBE), lalu masuk ke sisipkan> modul, dan tempelkan kode di jendela baru yang terbuka di sebelah kanan. Anda bisa menggunakan Alt + Q untuk keluar kembali ke Excel saat Anda selesai. Untuk menjalankan salah satu dari dua contoh pertama, masuk ke tab pengembang> kode> makro> pilih makro yang ingin Anda jalankan dari daftar, lalu pilih Jalankan.

Perlu bantuan lainnya?

Anda selalu dapat bertanya kepada pakar di Komunitas Teknologi Excel, mendapatkan dukungan di Komunitas Jawaban, atau menyarankan fitur maupun fitur baru di Suara Pengguna Excel.

Kembangkan keterampilan Office Anda
Jelajahi pelatihan
Dapatkan fitur baru terlebih dahulu
Gabung ke Office Insiders

Apakah informasi ini bermanfaat?

Terima kasih atas umpan balik Anda!

Terima kasih atas umpan balik Anda! Sepertinya menghubungkan Anda ke salah satu agen dukungan Office kami akan sangat membantu.

×