Find ile Başka Kitapta Arama Yapma

Katılım
15 Haziran 2021
Mesajlar
147
Excel Vers. ve Dili
Office 2016
Merhaba
Userform daki butona tıkladığında farklı bir kitapta find ile bulduğu sonuçları userformdaki kutucuklara yazmaya çalışıyorum. İlk kutucuğu yazıyor sonrasını yazmıyor.

Nerede hata yapıyorum?

Yardımcı olabilecek birisi var mı?

Kod:
Private Sub CommandButton3_Click()
    Dim c   As Range
    Dim s1  As Worksheet
    Dim yol As String, ad As String
    yol = ThisWorkbook.Path & "\Raporlar\"
    ad = "lab.xlsx"
    Set c = Workbooks.Open(yol & ad).Worksheets("labdata").Range("B:B").Find(TextBox3.Value, LookIn:=xlValues, LookAt:=xlWhole)
    If Not c Is Nothing Then
        TextBox5.Text = Workbooks.Open(yol & ad).Worksheets("labdata").Range("C" & c.Row)
        TextBox6.Text = Workbooks.Open(yol & ad).Worksheets("labdata").Range("D" & c.Row)
        TextBox7.Text = Workbooks.Open(yol & ad).Worksheets("labdata").Range("E" & c.Row)
    Else
        MsgBox "Lab Değerleri Bulunamadı"
    End If
End Sub
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Dosyayı önceki bir satırda zaten açtığınız için yeniden açmanız doğru olmaz.
Aşağıdaki satırları silin

Kod:
        TextBox5.Text = Workbooks.Open(yol & ad).Worksheets("labdata").Range("C" & c.Row)
        TextBox6.Text = Workbooks.Open(yol & ad).Worksheets("labdata").Range("D" & c.Row)
        TextBox7.Text = Workbooks.Open(yol & ad).Worksheets("labdata").Range("E" & c.Row)
Yerine aşağıdaki satırları ekleyin.
Kod:
        TextBox5.Text = Workbooks(ad).Worksheets("labdata").Range("C" & c.Row)
        TextBox6.Text = Workbooks(ad).Worksheets("labdata").Range("D" & c.Row)
        TextBox7.Text = Workbooks( ad).Worksheets("labdata").Range("E" & c.Row)
 
Katılım
15 Haziran 2021
Mesajlar
147
Excel Vers. ve Dili
Office 2016
Merhaba.
Dosyayı önceki bir satırda zaten açtığınız için yeniden açmanız doğru olmaz.
Aşağıdaki satırları silin

Kod:
        TextBox5.Text = Workbooks.Open(yol & ad).Worksheets("labdata").Range("C" & c.Row)
        TextBox6.Text = Workbooks.Open(yol & ad).Worksheets("labdata").Range("D" & c.Row)
        TextBox7.Text = Workbooks.Open(yol & ad).Worksheets("labdata").Range("E" & c.Row)
Yerine aşağıdaki satırları ekleyin.
Kod:
        TextBox5.Text = Workbooks(ad).Worksheets("labdata").Range("C" & c.Row)
        TextBox6.Text = Workbooks(ad).Worksheets("labdata").Range("D" & c.Row)
        TextBox7.Text = Workbooks( ad).Worksheets("labdata").Range("E" & c.Row)
Bu şekilde çalıştı.

Bir soru daha sorayım. Diğer kitabı açmadan verileri çekebilir miyim?
 
Üst