Korištenje drugih značajki za prepoznavanje povezanih vrsta podataka

Povezane vrste podataka objavljene su uExcel za Office 365 u lipnju 2018, a kao takve druge značajke možda ih neće moći identificirati. To može biti posebno istinito kada želite koristiti druge značajke da biste uvjetno utvrdili sadrži li ćelija povezanu vrstu podataka ili ne. U ovom se članku objašnjava nekoliko zaobilaznih rješenja koje možete koristiti za identifikaciju povezanih vrsta podataka u ćelijama.

Formule

Uvijek možete pisati formule koje se odnose na vrste podataka. No ako želite izdvojiti tekst ćelije s povezanom vrstom podataka pomoću funkcije TEXT, dobit ćete #VALUE! pogreška.

Zaobilazno rješenje je korištenje funkcije Fieldvalue i određivanje polja naziv za argument field_name . U sljedećem primjeru, ako je ćelija a1 sadržavala vrstu podataka burzovnog sustava, formula će vratiti naziv dionice.

= FIELDVALUE (a1; "naziv")

No ako ćelija a1 ne sadrži povezanu vrstu podataka, funkcija FIELDVALUE vratit će #FIELD! pogreška. Ako želite procijeniti sadrži li ćelija povezanu vrstu podataka, možete koristiti sljedeću formulu, koja koristi funkciju ISERROR za testiranje ako će funkcija FIELDVALUE vratiti pogrešku.

= IF (ISERROR (FIELDVALUE (a2; "naziv")), "Ova ćelija nema povezanu vrstu podataka", "Ova ćelija ima povezanu vrstu podataka")

Ako se formula procjenjuje na pogrešku, ona će vratiti tekst "Ova ćelija nema povezanu vrstu podataka", u suprotnom će se vratiti "Ova ćelija ima povezanu vrstu podataka".

Ako jednostavno želite potisnuti #FIELD! pogreška, možete koristiti sljedeće:

= IFERROR (FIELDVALUE (a1; "naziv"), "")

Koja će vratiti praznu ćeliju ako dođe do pogreške.

Uvjetno oblikovanje

Ćeliju možete uvjetno oblikovati na temelju toga ima li povezanu vrstu podataka ili ne. Najprije odaberite ćelije kojima je potrebno uvjetno oblikovanje, a zatim idite na početnu > uvjetno oblikovanje > novo pravilo > upotrijebite formulu... Za formulu koristite sljedeće:

= NOT (IZERROR (FIELDVALUE (a1; "naziv")))

Gdje je ćelija a1 Gornja ćelija u rasponu koji želite procijeniti. Zatim primijenite željeni oblik.

U ovom primjeru, ako ćelija a1 sadrži valjani naziv polja za "naziv", formula će vratiti TRUE, a oblikovanje će biti primijenjeno. Ako ćelija a1 ne sadrži povezanu vrstu podataka, formula će vratiti FALSE i neće se primjenjivati nijedno oblikovanje. Ako želite istaknuti bilo koje ćelije koje ne sadrže valjane vrste povezanih podataka, možete ukloniti ne.

VBA

Postoji nekoliko funkcija VBA (Visual Basic for Applications) koje možete koristiti da biste odredili sadrži li ćelija ili raspon povezane vrste podataka. Prvi postupak koristi svojstvo Hasrichdatatype

Oba će postupka zatražiti da odaberete raspon ćelija koji želite procijeniti, a zatim vratite okvir s rezultatima.

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

Ovaj sljedeći postupak koristi svojstvo LinkedIn Dodatatypestate.

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

Ovaj završni isječak koda jest korisnički definirana funkcija (UDF), a vi ga referencirate kao i sve druge formule programa Excel. Jednostavno unesite =fn_IsLinkedDataType (a1), gdje je a1 ćelija koju želite procijeniti.

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

Da biste koristili bilo koji od ovih primjera, pritisnite ALT + F11 da biste otvorili Visual Basic Editor (VBE), a zatim idite na Umetni> moduli zalijepite kod u novi prozor koji se otvara s desne strane. Kada završite, možete koristiti Alt + Q da biste se vratili u Excel. Da biste pokrenuli jedan od prvih dvaju primjera, otvorite karticu programiranje> kod> makronaredbe> odaberite makronaredbu koju želite pokrenuti s popisa, a zatim odaberite Pokreni.

Je li vam potrebna dodatna pomoć?

Postavite pitanje stručnjaku u tehničkoj zajednici za Excel, zatražite podršku u zajednici za odgovore ili predložite novu značajku ili poboljšanje na forumu za Excel User Voice.

Proširite svoje vještine korištenja sustava Office
Istražite osposobljavanje

Jesu li vam ove informacije bile korisne?

Hvala vam na povratnim informacijama!

Hvala vam na povratnim informacijama! Čini se da bi vam pomoglo kad bismo vas povezali s nekim od naših agenata podrške za Office.

×