Bağlı veri türleri ilk önce 2018 haziran 'da Microsoft 365 için Excel yayımlanmıştır ve bu şekilde diğer özellikler bunları tanımlayamayabilir. Bir hücrenin bağlantılı veri türü içerip içermediğini koşullu olarak belirlemek için, bu özellikle doğru olabilir. Bu makalede, hücrelerdeki bağlantılı veri türlerini belirlemek için kullanabileceğiniz bazı geçici çözümler açıklanmaktadır.
Not: Bağlantılı veri türleri yalnızca Worldwide çok kiracılı Microsoft 365 istemcilerde kullanılabilir.
Formüller
Her zaman veri türlerine başvuran formüller yazabilirsiniz. Ancak, metın işlevini kullanarak bağlantılı veri türü içeren bir hücrenin metnini ayıklamak istiyorsanız, bir #VALUE alırsınız! hatası oluşur.
Geçici çözüm, FieldValue işlevini kullanmak ve field_name bağımsız değişkeni için ad alanını belirtmelidir. Aşağıdaki örnekte, A1 hücresi bir hisse senedi veri türü içeriyorsa, formül hisse senedi adını verir.
= FIELDVALUE (a1, "ad")
Ancak, A1 hücresi bağlantılı veri türü içermiyorsa, FIELDVALUE işlevi #FIELD döndürür! hatası. Bir hücrenin bağlantılı veri türü içerip içermediğini değerlendirmek istiyorsanız, FIELDVALUE işlevinin hata döndürmeyeceğini sınamak için ıSERROR işlevini kullanan aşağıdaki formülü kullanabilirsiniz.
= Eğer (EHATALıYSA (ALANDEĞERI (a2, "ad")), "Bu hücrede bağlantılı veri türü yoktur
Formül bir hata verirse, "Bu hücrede bağlantılı veri türü yok" metnini döndürür; Aksi halde "Bu hücrede bağlantılı veri türü var" olur.
Yalnızca #FIELD bastırmak istiyorsanız! şunları kullanabilirsiniz:
= EĞERHATA (ALANDEĞERI (a1, "ad"), "")
Bir hata olduğunda boş bir hücre döndürecektir.
Koşullu biçimlendirme
Bir hücreyi bağlantılı veri türü olup olmadığına göre koşullu olarak biçimlendirebilirsiniz . Önce koşullu biçimlendirmeye ihtiyaç duyan hücreleri seçersiniz ve sonra da giriş > koşullu biçimlendirme > Yeni kural > bir formül kullanın.. . Formül için aşağıdakileri kullanırsınız:
= DEĞIL (EHATALıYSA (ALANDEĞERI (a1, "ad"))))
A1 hücresi, değerlendirmek istediğiniz aralıktaki üst hücredir. İstediğiniz biçimi uygulayın.
Bu örnekte, A1 hücresi "ad" için geçerli bir alan adı içeriyorsa, formül doğru döndürür ve biçimlendirme uygulanır. A1 hücresi bağlantılı veri türü içermiyorsa, formül FALSE döndürür ve biçimlendirme uygulanmaz. Bunun yerine geçerli bağlantılı veri türleri içermeyen hücreleri vurgulamak istemiyorsanız, bunu kaldırabilirsiniz.
VBA
Bir hücrenin veya aralığın bağlantılı veri türleri içerip içermediğini belirlemek için kullanabileceğiniz birkaç VBA (Visual Basic for Applications) yöntemi vardır. Bu ilk yordam Hasrichdatatype özelliğinikullanır.
Bu yordamların her ikisi de değerlendirilecek bir hücre aralığı seçmenizi ve ardından sonuçları içeren bir ileti kutusu döndürmenizi isteyecektir.
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
Bu sonraki yordamda Linkeddatatypestate özelliğikullanılır.
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
Bu son kod parçacığı, Kullanıcı tanımlı bir işlevdir (UDF) ve diğer Excel formüllerine benzer şekilde başvurursunuz. Yalnızca =fn_IsLinkedDataType (a1)yazın; burada a1, değerlendirmek istediğiniz hücredir.
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
Bu örneklerden herhangi birini kullanmak için, Alt + F11 tuşlarına basarak Visual Basic Düzenleyicisi 'NI (VBE) açın ve> modülüEkle 'ye gidin ve sağ tarafta açılan yeni pencerede kodu yapıştırın. İşiniz bittiğinde Excel 'e geri dönmek için alt + Q tuşlarını kullanabilirsiniz. İlk iki örnekten birini çalıştırmak için, Geliştirici sekmesine> kod> makrolarına gidin> çalıştırmak istediğiniz makroyu listeden seçin ve Çalıştır'ı seçin.
Daha fazla yardım mı gerekiyor?
Sorularınızı Excel Teknoloji Topluluğu’ndaki uzmanlara sorabilir, Yanıt topluluğu’ndan destek alabilir ya da Excel için UserVoice platformuna yeni bir özellik veya iyileştirme önerisi sunabilirsiniz.
Not: Bu sayfanın çevirisi otomasyon aracılığıyla yapılmıştır ve bu nedenle hatalı veya yanlış dil bilgisi kullanımları içerebilir. Amacımız, bu içeriğin sizin için faydalı olabilmesini sağlamaktır. Bu bilgileri yararlı bulup bulmadığınızı bizimle paylaşır mısınız? Kolayca başvurabilmek için İngilizce makaleye buradan ulaşabilirsiniz.