Skip to main content

AccessTr.neT


Microsoft Access'te Köprü Veri Türü ile ilgili fonksiyonlar

Microsoft Access'te Köprü Veri Türü ile ilgili fonksiyonlar

Çözüldü #1
Köprümüzün şöyle olduğunu düşünürsek

Visual Basic Code
phil@codekabinett.com#mailto:phil@codekabinett.com#

köprü metnini almak için

Visual Basic Code
Public Function GetHyperlinkRawData(ByVal hyperlinkData As Variant) As Variant
    GetHyperlinkRawData = hyperlinkData
End Function



tek tıklamaya yanıt vermesi için

Visual Basic Code
Private Sub txtHyperlinkFullAddress_Click()
On Error GoTo txtHyperlinkFullAddress_Click_Err

    If Not IsNull(Me.txtHyperlinkFullAddress.Value) Then
        Application.FollowHyperlink Me.txtHyperlinkFullAddress.Value
    End If

Exit Sub

txtHyperlinkFullAddress_Click_Err:
    Call MsgBox("Error " & Err.Number & " - " & Err.Description & " (in " & Me.Name & ".txtHyperlinkFullAddress_Click)")
End Sub


DisplayText'i köprü sütunundan ayıklamak için

Visual Basic Code
Public Function GetHyperlinkDisplayText(ByVal hyperlinkData As Variant) As Variant

    Const SEPARATOR As String = "#"

    Dim retVal As Variant
    Dim tmpArr As Variant
    
    If IsNull(hyperlinkData) Then
        retVal = hyperlinkData
    Else
        
        tmpArr = Split(hyperlinkData, SEPARATOR)
    
        If Len(tmpArr(0)) > 0 Then
            retVal = tmpArr(0)
        Else
            retVal = tmpArr(1)
            If Len(tmpArr(2)) > 0 Then
                retVal = retVal & "#" & tmpArr(2)
            End If
        End If
    
    End If

    GetHyperlinkDisplayText = retVal

End Function


DisplayText i almak için

Visual Basic Code
Public Function GetHyperlinkFullAddress(ByVal hyperlinkData As Variant, Optional ByVal removeMailto As Boolean) As Variant

    Const SEPARATOR As String = "#"

    Dim retVal As Variant
    Dim tmpArr As Variant
    
    If IsNull(hyperlinkData) Then
        retVal = hyperlinkData
    Else
        
        If InStr(hyperlinkData, SEPARATOR) > 0 Then
            ' I append 4 separators at the end, so I don't have to worry about the
            ' lenght of the array returned by Split()
            hyperlinkData = hyperlinkData & String(4, SEPARATOR)
            tmpArr = Split(hyperlinkData, SEPARATOR)
            
            If Len(tmpArr(1)) > 0 Then
                retVal = tmpArr(1)
                If Len(tmpArr(2)) > 0 Then
                    retVal = retVal & "#" & tmpArr(2)
                End If
            End If
        Else
            retVal = hyperlinkData
        End If
    
        If Left(retVal, 7) = "mailto:" Then
            retVal = Mid(retVal, 8)
        End If
    
    End If

    GetHyperlinkFullAddress = retVal

End Function

@benbendedeilem
Son Düzenleme: 01/06/2020, 10:59, Düzenleyen: accessman.
Cevapla
#2
birinci mesajdaki kodlar ile 

Visual Basic Code
ActiveControl.Hyperlink.CreateNewDocument

bu kodun nasıl bir bağlantısı var ben anlayamadım

@benbendedeilem
Cevapla
#3
1. mesaja eklediğiniz kodları hangi amaçla eklediğinizi anlayamadım. 2. mesaja eklediğiniz kod eksik, devamında oluşturulacak dosyanın dizininin belirtilmesi gerekli.

Visual Basic Code
 ActiveControl.Hyperlink.CreateNewDocument "D:\deneme.txt", True, True


şeklinde olması gerekli. Bu kodun ilk mesajdaki kodlarla herhangi bir alakası yok. Birisi köprü oluşturma, köprüdeki verileri alma ile ilgili diğeri yeni dosya oluşturma ile ilgili.

"Boş Örnek Eklerim, Yapıp Verirler" demeyin, örneğinizi hazırlayın.
Komplike kod talebiniz var ise İletişim bağlantısından bize ulaşın. 
Cebelleşmezsen Öğrenemezsin. 
Cevapla
#4
"Hyperlink" köprüler için bir terim
dosya oluşturmakta nasıl bir görevi var onu anlamadım
@benbendedeilem
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da