Saistītie datu tipi pirmoreiz tika izlaisti Excel pakalpojumam Microsoft 365 programmā 2018, kā arī citi līdzekļi, iespējams, nevarēs tos identificēt. Tas var būt īpaši patiess, ja vēlaties izmantot citus līdzekļus, lai noteiktu, vai šūna satur saistītu datu tipu. Šajā rakstā ir izskaidroti daži risinājumi, ko var izmantot, lai norādītu saistīto datu tipus šūnās.
Piezīme.: Saistītie datu tipi ir pieejami tikai globālajiem vairāku nomnieku klientiem (standarta Microsoft 365 konti).
Formulas
Jūs vienmēr varat rakstīt formulas, kurās ir atsauces uz datu tipiem. Tomēr, ja vēlaties izvilkt šūnas tekstu ar saistītu datu tipu, izmantojot funkciju TEXT, saņemsit #VALUE! Ja norādītā pozīcija atrodas pirms lauka pirmā vienuma vai aiz lauka pēdējā vienuma, formula radīs kļūdu #REF!.
Risinājums ir izmantot funkciju FIELDVALUE un norādīt argumenta field_name lauku Name . Šajā piemērā, ja šūnā A1 ir iekļauts akciju datu tips, formula atgriezīs noliktavas nosaukumu.
= FIELDVALUE (a1, "name")
Tomēr, ja šūnā a1 nav ietverts saistīts datu tips, funkcija FIELDVALUE atgriež #FIELD! kļūdu. Ja vēlaties novērtēt, vai šūnā ir saistīts datu tips, varat izmantot tālāk norādīto formulu, kas izmanto funkciju ISERROR, lai pārbaudītu, vai funkcija FIELDVALUE atgriezīs kļūdu.
= IF (ISERROR (FIELDVALUE (a2; "name")), "šajā šūnā nav saistīto datu tips", "šai šūnai ir saistīts datu tips")
Ja formulas rezultāts ir kļūda, tad tiek atgriezts teksts "šajā šūnā nav saistīta datu tipa", pretējā gadījumā tiek atgriezta "šajā šūnā ir saistīts datu tips".
Ja vienkārši vēlaties apspiest #FIELD! kļūdu, varat izmantot:
= IFERROR (FIELDVALUE (a1; "name"), "")
Kas atgriezīs tukšu šūnu, ja tiek parādīts kļūdas ziņojums.
Nosacījumformatēšana
Šūnu var Formatēt , pamatojoties uz to, vai tajā ir saistīts datu tips. Vispirms atlasiet šūnas, kurām ir nepieciešams nosacījumformatējums, un pēc tam dodieties uz sākums > Nosacījumformatēšana > Jauna kārtula > formulas lietošana... Formulai varat izmantot tālāk norādītās darbības.
= NOT (ISERROR (FIELDVALUE (a1, "vārds")))
Kur šūna a1 ir augšējā šūna diapazonā, kuru vēlaties novērtēt. Pēc tam lietojiet vēlamo formātu.
Šajā piemērā, ja šūnā A1 ir derīgs lauka nosaukums "name", formula atgriež vērtību TRUE un formatējums tiks lietots. Ja šūnā a1 nav ietverts saistīts datu tips, formula atgriež APLAMs, bet formatējums netiek lietots. Varat noņemt funkciju NOT, ja vēlaties iezīmēt šūnas, kurās nav derīgu saistīto datu tipu.
VBA
Ir vairākas VBA (Visual Basic for Applications) metodes, ko var izmantot, lai noteiktu, vai šūnā vai diapazonā ir saistīti datu tipi. Šajā pirmajā procedūrā tiek izmantots Rekvizīts HasRichDataType.
Abas šīs procedūras piedāvās atlasīt šūnu diapazonu, ko vēlaties novērtēt, un pēc tam atgriezt ziņojuma lodziņu ar rezultātiem.
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
Nākamā procedūra izmanto rekvizītu 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
Šis beigu koda fragments ir lietotāja definēta funkcija (UDF), un atsauce uz to ir tieši tāda pati kā citas Excel formulas. Vienkārši ievadiet =fn_IsLinkedDataType (a1), kur a1 ir šūna, kuru vēlaties novērtēt.
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
Lai izmantotu jebkuru no šiem piemēriem, nospiediet taustiņu kombināciju ALT + F11 , lai atvērtu Visual Basic redaktoru (VBE), un pēc tam pārejiet uz Ievietot> moduliun ielīmējiet kodu jaunā logā, kas tiek atvērts labajā pusē. Kad esat pabeidzis, varat izmantot taustiņu kombināciju Alt + Q , lai izietu no programmas Excel. Lai izpildītu kādu no pirmajiem diviem piemēriem, dodieties uz cilni Izstrādātājs> kodu> makro> sarakstā atlasiet izpildāmo makro un pēc tam atlasiet palaist.
Vai nepieciešama papildu palīdzība?
Vienmēr varat pajautāt speciālistiem Excel Tech kopienā, saņemt atbalstu Answers kopienā vai ieteikt jaunu līdzekli vai uzlabojumu vietnē Excel User Voice.
Piezīme.: Šī lapa ir tulkota automatizēti, un tajā var būt gramatiskas kļūdas un neprecizitātes. Mūsu nolūks ir šo saturu padarīt jums noderīgu. Vai jūs varat mūs informēt, vai informācija bija noderīga? Šeit ir raksts angļu valodā jūsu atsaucei.