סוגי נתונים מקושרים הופצה לראשונה Excel עבור Microsoft 365 ביוני 2018, וייתכן שתכונות אחרות לא יוכלו לזהות אותן. הדבר יכול להיות נכון במיוחד כאשר ברצונך להשתמש בתכונות אחרות כדי לזהות באופן מותן אם תא מכיל סוג נתונים מקושר או לא. מאמר זה מסביר כמה דרכים לעקיפת הבעיה הבאות כדי לזהות סוגי נתונים מקושרים בתאים.
הערה: סוגי נתונים מקושרים זמינים רק ללקוחות Multi-Tenant ברחבי העולם (חשבונות Microsoft 365 רגילים).
נוסחאות
תמיד ניתן לכתוב נוסחאות המפנה לסוגי נתונים. עם זאת, אם ברצונך לחלץ את הטקסט של תא עם סוג נתונים מקושר באמצעות הפונקציה TEXT, תוכל לקבל #VALUE! #VALUE!.
פתרון הוא להשתמש בפונקציה FIELDVALUE ולציין את השדה שם עבור field_name הארגומנט. בדוגמה הבאה, אם תא A1 הכיל סוג נתונים של מניות, הנוסחה תחזיר את שם המניה.
=FIELDVALUE(A1,"Name")
עם זאת, אם תא A1 אינו מכיל סוג נתונים מקושר, הפונקציה FIELDVALUE תחזיר שגיאת #FIELD!. אם ברצונך להעריך אם תא מכיל סוג נתונים מקושר, באפשרותך להשתמש בנוסחה הבאה, המשתמשת בפונקציה ISERROR כדי מחשב אם הפונקציה FIELDVALUE תחזיר שגיאה.
=IF(ISERROR(FIELDVALUE(A2,"Name")),"תא זה אינו כולל סוג נתונים מקושר","לתא זה יש סוג נתונים מקושר")
אם הנוסחה מוערכת כשגיאה, היא תחזיר את הטקסט "תא זה אינו כולל סוג נתונים מקושר", אחרת, היא תחזיר את הטקסט "תא זה כולל סוג נתונים מקושר".
אם ברצונך פשוט להעלים את #FIELD! , באפשרותך להשתמש ב:
=IFERROR(FIELDVALUE(A1,"Name"),"")
אשר יחזיר תא ריק אם תיתרחש שגיאה.
עיצוב מותנה
באפשרותך לעצב תא באופן מותנה בהתבסס על סוג נתונים מקושר או לא. תחילה עליך לבחור את התאים שכוללים את העיצוב המותנה ולאחר מכן לעבור אל בית > עיצוב מותנה >כלל > השתמש בנוסחה... עבור הנוסחה, השתמש בפעולות הבאות:
=NOT(ISERROR(FIELDVALUE(A1,"Name")))
כאשר תא A1 הוא התא העליון בטווח שברצונך להעריך. לאחר מכן החל את התבנית הרצויה.
בדוגמה זו, אם תא A1 מכיל שם שדה חוקי עבור "Name", הנוסחה מחזירה TRUE והעיצוב יוחל. אם תא A1 אינו מכיל סוג נתונים מקושר, הנוסחה מחזירה FALSE ולא יוחל עיצוב. באפשרותך להסיר את ה- NOT אם רצית לסמן תאים שלא מכילים סוגי נתונים מקושרים חוקיים במקום זאת.
VBA
קיימות כמה שיטות VBA (Visual Basic for Applications) הבאות כדי לזהות אם תא או טווח מכילים סוגי נתונים מקושרים. הליך ראשון זה משתמש במאפיין HasRichDataType.
שני הליכים אלה יבקשו ממך לבחור טווח תאים להערכה ולאחר מכן להחזיר תיבת הודעה עם התוצאות.
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
הליך זה הבא משתמש במאפיין 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
מקטע קוד סופי זה הוא פונקציה המוגדרת על-ידי המשתמש (UDF), ואתה מפנה אליה בדיוק כמו כל Excel אחרת. פשוט הזן =fn_IsLinkedDataType(A1), כאשר A1 הוא התא שברצונך להעריך.
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
כדי להשתמש בכל אחת מהדוגמאות הללו, הקש Alt+F11 כדי לפתוח את עורך Visual Basic (VBE), ולאחר מכן עבור אל הוסף מודול> והדבקאת הקוד בחלון החדש שנפתח בצד ימין. באפשרותך להשתמש ב- Alt+Q כדי לצאת Excel כדי לחזור ל- Excel לאחר סיימת. כדי להפעיל אחת משני הדוגמאות הראשונות, עבור אל הכרטיסיה מפתחים> קוד > פקודות מאקרו> את המאקרו שברצונך להפעיל מהרשימה ולאחר מכן בחר הפעל.
זקוק לעזרה נוספת?
תוכל תמיד לשאול מומחה ב- Excel Tech Community או לקבל תמיכה בקהילת Answers.