שימוש בתכונות אחרות לזיהוי סוגי נתונים מקושרים

סוגי נתונים מקושרים הופצובExcel עבור Office 365 ביוני 2018, ולכן ייתכן שתכונות אחרות לא יוכלו לזהות אותן. אפשרות זו יכולה להיות נכונה במיוחד כאשר ברצונך להשתמש בתכונות אחרות כדי לזהות באופן מותנה אם תא מכיל סוג נתונים מקושר או לא. מאמר זה מסביר כמה פתרונות שניתן להשתמש בהם כדי לזהות סוגי נתונים מקושרים בתאים.

נוסחאות

באפשרותך תמיד לכתוב נוסחאות המפנות לסוגי נתונים. עם זאת, אם ברצונך לחלץ את הטקסט של תא עם סוג נתונים מקושר באמצעות הפונקציה TEXT, תקבל #VALUE! ‎#VALUE!‎.

פתרון הוא להשתמש בפונקציה FIELDVALUE ולציין את השדה Name עבור הארגומנט field_name . בדוגמה הבאה, אם התא A1 הכיל סוג נתונים של מניות, הנוסחה תחזיר את שם המניה.

= FIELDVALUE (A1, "Name")

עם זאת, אם התא A1 אינו מכיל סוג נתונים מקושר, הפונקציה FIELDVALUE תחזיר שגיאת #FIELD!. אם ברצונך להעריך אם תא מכיל סוג נתונים מקושר, באפשרותך להשתמש בנוסחה הבאה, המשתמשת בפונקציה ISERROR כדי לבדוק אם הפונקציה FIELDVALUE מחזירה שגיאה.

= IF (ISERROR (FIELDVALUE (A2, "Name")), "תא זה אינו כולל סוג נתונים מקושר", "תא זה מכיל סוג נתונים מקושר")

אם הנוסחה מוערכת כשגיאה, היא מחזירה את הטקסט "לתא זה אין סוג נתונים מקושר", אחרת, הוא יחזיר "לתא זה יש סוג נתונים מקושר".

אם ברצונך רק לדכא את ה#FIELD! שגיאה, באפשרותך להשתמש ב:

= IFERROR כדי (FIELDVALUE (A1, "Name"), "")

שיחזיר תא ריק אם קיימת שגיאה.

עיצוב מותנה

באפשרותך לעצב תא מותנה בהתבסס על השאלה אם יש לו סוג נתונים מקושר או לא. תחילה, בחר את התאים הדרושים לעיצוב המותנה ולאחר מכן עבור אל Home > עיצוב מותנה > כלל חדש > שימוש בנוסחה. .. עבור הנוסחה, עליך להשתמש בפרטים הבאים:

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

כאשר תא A1 הוא התא העליון בטווח שברצונך להעריך. לאחר מכן, החל את התבנית הרצויה.

בדוגמה זו, אם התא A1 מכיל שם שדה חוקי עבור "Name", הנוסחה מחזירה TRUE והעיצוב יוחל. אם התא A1 אינו מכיל סוג נתונים מקושר, הנוסחה מחזירה FALSE, ולא מתבצעת החלה של עיצוב. במקום זאת, באפשרותך להסיר את האפשרות לא אם ברצונך לסמן תאים שאינם מכילים סוגי נתונים מקושרים חוקיים במקום זאת.

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 EDITOR (VBE) ולאחר מכן עבור אל הוספת מודול> והדבק את הקוד בחלון החדש שנפתח משמאל. באפשרותך להשתמש ב- Alt + Q כדי לצאת חזרה ל-Excel כשתסיים. כדי לבצע אחת משתי הדוגמאות הראשונות, עבור אל הכרטיסיה מפתחים> קוד > פקודות מאקרו > בחר את המאקרו שברצונך להפעיל מהרשימה ולאחר מכן בחר הפעלת.

זקוק לעזרה נוספת?

ניתן לשאול תמיד מומחה ב- קהילת Tech Community עבור Excel, לקבל תמיכה בקהילת Answers או להציע תכונה חדשה או שיפור ב- User Voice עבור Excel.

שפר את הכישורים שלך ב- Office
סייר בהדרכה
קבל תכונות חדשות לפני כולם
הצטרף למשתתפי Office Insider

האם מידע זה היה שימושי?

תודה על המשוב!

תודה על המשוב! נראה שכדאי לקשר אותך לאחד מנציגי התמיכה של Office.

×