Access'i bir kelime işlemci gibi kullanmaya çalışmanız hatalı. Zira Access'de formlar, tablolar, raporlar ve denetimlerde metinler Plain Text formatında saklanır. Bahsettiğiniz gibi bir çalışma yapabilmeniz için öncelikle tablonuzda fark_gorunum ve eklenen_metin alanlarının biçiminin zengin metin olarak ayarlanması, formunuzdaki textboxların biçiminin de aynı şekilde zengin metin olarak ayarlanması gerekir. Ancak handikap şudur: Zengin Metin opsiyonu biçimlendirme özellliği olarak
Access içinde yer alsa da, örneğin bir kelime işlemcisi Word gibi başarılı değildir ve bu yönüyle hatalı sonuç vermeye çok açıktır.
Bu ayarlamalarınızı yaptıktan sonra metin_iki textboxının AfterUpdate olayında
Private Sub metin_iki_AfterUpdate()
Dim StrTxt1 As String, StrTxt2 As String, StrDiff As String, StrAdd As String
Dim i As Integer, j As Integer
Dim BoolDiff As Boolean
' Textbox değerlerini al
StrTxt1 = Me.metin_bir.Value
StrTxt2 = Me.metin_iki.Value
' Fark gösterimini ve eklenen metni değişken olarak belirle
Me.fark_gorunum.Value = ""
Me.eklenen_metin.Value = ""
StrDiff = ""
StrAdd = ""
' Metin_iki içinde bulunan farklı kısımları belirle
For i = 1 To Len(StrTxt2)
BoolDiff = False
For j = 1 To Len(StrTxt1)
' Metin_iki'deki karakter metin_bir'de bulunuyorsa devam et
If Mid(StrTxt2, i, 1) = Mid(StrTxt1, j, 1) Then
BoolDiff = True
Exit For
End If
Next j
' Metin_iki'de bulunan ancak metin_bir'de bulunmayan karakterler
If Not BoolDiff Then
' Fark gösterimini güncelle, kırmızı renkte işaretle
StrDiff = StrDiff & "<font color='red'>" & Mid(StrTxt2, i, 1) & "</font>"
' Eklenen metni güncelle
StrAdd = StrAdd & "<font color='red'>" & Mid(StrTxt2, i, 1) & "</font>"
Else
' Fark gösterimine normal karakteri ekle
StrDiff = StrDiff & Mid(StrTxt2, i, 1)
End If
Next i
' Farkgorunum ve eklenen_metin textboxlarını güncelle
Me.fark_gorunum.Value = StrDiff
Me.eklenen_metin.Value = StrAdd
End Sub
gibi bir kodla istediğinizi yapabilirsiniz. Ancak belirttiğim üzere
Access kelime işlemci değildir bu tip bir yaklaşım uygulamanın yapısına uygun bir çalışma olmayacaktır.