Çözüldü ClipBoard'dan TextBox'a yapıştırma

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
204
Excel Vers. ve Dili
Excel 2021
Altın Üyelik Bitiş Tarihi
03-09-2026
Ekran Alıntısı.JPG
Yukarıdaki gibi özel karakterleri kullanabilmek için bir userform hazırladım.

Kod:
Public WithEvents lbt As MSForms.Label
Private Sub lbt_click()
    Set MyData = New DataObject
    MyData.SetText lbt.Caption
    MyData.PutInClipboard
End Sub
Class modüle yazdığım Kod ile de Label'lara tıklayınca karakterleri clipboarda kopyaladım.

Kod:
Private Sub TextBox1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Button = 2 Then
userform1.Show
End If
End Sub
Yukarıdaki Kod ile Textbox'ın üzerine sağ tıklayınca userform'un açılmasını sağladım.

Sorunum şu; Bu tabloda tıkladığım verinin sağ tıklayarak açtığım Textbox'a kopyalanmasını istiyorum.
 

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
204
Excel Vers. ve Dili
Excel 2021
Altın Üyelik Bitiş Tarihi
03-09-2026
Buna bakmıştım. Ama daha çok Userform yüklenirken benim
Kod:
Me.ActiveControl.Object.SelectedItem.ActiveControl.Name
komutuyla nesnenin ismini belirleyip simgeye tıkladığımda oraya yapıştırmam lazım. Yalnız benim Textboxlar Userformda Multipage'nin içindeki Frame nesnesinin içinde. Onun içinde şöyle bir link buldum ama komutları çalıştıramadım. (Daha doğrusu tam anlamadım.)

https://www.ozgrid.com/forum/forum/help-forums/excel-general/136676-activecontrol-three-levels
 

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
204
Excel Vers. ve Dili
Excel 2021
Altın Üyelik Bitiş Tarihi
03-09-2026
Kod:
Function ReallyActiveControl() As Object
    Dim Container As Object
    Set Container = userform1.MultiPage1
    On Error Resume Next
        Do
        With Container
            Set Container = .Pages(.Value)
        End With
        Err.Clear
        Set Container = Container.ActiveControl
       
        Loop Until Err
    On Error GoTo 0
    Set ReallyActiveControl = Container
End Function
Kod:
Public WithEvents lbt As MSForms.Label
   
Dim myControl As Object
Set myControl = ReallyActiveControl()
myControl.Text = myControl.Text & lbt.Caption

End Sub
Bu şekilde simgeye tıklayınca işlem tamam.
 
Son düzenleme:
Üst