Vpišite se z Microsoftovim
Vpišite se ali ustvarite račun.
Pozdravljeni,
Izberite drug račun.
Imate več računov
Izberite račun, s katerim se želite vpisati.

Povezane vrste podatkov so bile prvič izdane v Excel za Microsoft 365 juniju 2018, zato jih zaradi drugih funkcij morda ne bo mogoče prepoznati. To lahko še posebej velja, če želite uporabiti druge funkcije za pogojno določanje, ali celica vsebuje povezano vrsto podatkov ali ne. V tem članku so razložene nekatere rešitve, ki jih lahko uporabite za prepoznavanje povezanih vrst podatkov v celicah.

Opomba: Povezane vrste podatkov so na voljo le za odjemalce za več najemniki za Worldwide (standardni Microsoft 365 računi).

Formule

Vedno lahko napišete formule, ki se sklicevajo na vrste podatkov. Če pa želite ekstrahiranje besedila celice s povezanim podatkovnim tipom s funkcijo TEXT, dobite #VALUE! napaka #REF!.

Rešitev je, da uporabite funkcijo FIELDVALUE in določite polje »Ime« za field_name argumenta. Če je v tem primeru celica A1 vsebovala vrsto podatkov delnic, bo formula vrnila ime delnice.

=FIELDVALUE(A1,"Ime")

Če pa v celici A1 ni povezane vrste podatkov, funkcija FIELDVALUE vrne napako #FIELD!. Če želite ovrednotiti, ali celica vsebuje povezano vrsto podatkov ali ne, uporabite to formulo, ki s funkcijo ISERROR preveri, ali funkcija FIELDVALUE vrne napako.

=IF(ISERROR(FIELDVALUE(A2,"Ime")),"Ta celica nima povezane vrste podatkov","Ta celica ima povezano vrsto podatkov")

Če formula vrne napako, bo vrnila besedilo »Ta celica nima povezane vrste podatkov«, sicer bo vrnila »Ta celica ima povezano vrsto podatkov«.

Če preprosto želite preprečit #FIELD! lahko uporabite:

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

To vrne prazno celico, če pride do napake.

Pogojno oblikovanje

Celico lahko pogojno oblikujete glede na to, ali ima povezana vrsta podatkov. Najprej izberite celice, ki potrebujejo pogojno oblikovanje, nato pa pojdite na Osnovno >Pogojno oblikovanje > Novo pravilo > Uporabite formulo ... Za formulo uporabite to:

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

Kjer je celica A1 zgornja celica v obsegu, ki ga želite ovrednotiti. Nato uporabite obliko, ki jo želite uporabiti.

Če je v tem primeru v celici A1 veljavno ime polja za »Ime«, formula vrne vrednost TRUE in oblikovanje bo uporabljeno. Če v celici A1 ni povezane vrste podatkov, formula vrne VREDNOST FALSE in oblikovanje ne bo uporabljeno. NOT lahko odstranite, če želite označiti vse celice, v katerih ni veljavnih povezanih vrst podatkov.

VBA

Obstaja več načinov VBA (VBA), ki jih lahko uporabite, če želite ugotoviti, ali celica ali obseg vsebuje povezane vrste podatkov. Ta prvi postopek uporablja lastnost HasRichDataType. 

Oba postopka vas pozoveta, da izberete obseg celic, ki jih želite ovrednotiti, nato pa vrnete polje s sporočilom z rezultati.

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

Ta naslednji postopek uporablja lastnost 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

Ta končni izrezek kode je uporabniško določena funkcija in vi se sklicujete nanjo kot na katero koli Excel formulo. Preprosto vnesite =fn_IsLinkedDataType(A1), kjer je A1 celica, ki jo želite ovrednotiti.

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

Če želite uporabiti katerega koli od teh primerov, pritisnite Alt+F11, da odprete urejevalnik za Visual Basic (VBE), nato pa izberite Vstavi >Modulin prilepite kodo v novo okno, ki se odpre na desni. S kombinacijo tipk Alt+Q lahko zaprete Excel, ko končate. Če želite zagnati enega od prvih dveh primerov, pojdite na zavihek Razvijalec > Koda > Makri > na seznamu izberite makro, ki ga želite zagnati, nato pa izberite Zaženi.

Potrebujete dodatno pomoč?

Kadar koli lahko zastavite vprašanje strokovnjaku v skupnosti tehničnih strokovnjakov za Excel ali pa pridobite podporo v skupnostih.

Ali potrebujete dodatno pomoč?

Ali želite več možnosti?

Raziščite ugodnosti naročnine, prebrskajte izobraževalne tečaje, preberite, kako zaščitite svojo napravo in še več.

Skupnosti vam pomagajo postaviti vprašanja in odgovoriti nanje, posredovati povratne informacije in prisluhniti strokovnjakom z bogatim znanjem.

Vam je bila informacija v pomoč?

Kako ste zadovoljni s kakovostjo jezika?
Kaj je vplivalo na vašo izkušnjo?
Če pritisnete »Pošlji«, bomo vaše povratne informacije uporabili za izboljšanje Microsoftovih izdelkov in storitev. Vaš skrbnik za IT bo lahko zbiral te podatke. Izjavi o zasebnosti.

Zahvaljujemo se vam za povratne informacije.

×