• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Başka Dosyadan Veri Çekme Filtre Sorunu

Katılım
24 Temmuz 2019
Mesajlar
181
Excel Vers. ve Dili
2010 ve 2016 Türkçe
Merhaba arkadaşlar. Başka dosyadan veri çekerken aşağıdaki makroyu kullanmaktayım. Şöyle bir sorunum var. Verileri çektiğim dosyanın makroda belirlediğim ABC ve XYZ sayfalarında filtre varsa filtreli halini çekiyor. Ben sanki filtre yokmuş gibi tüm verileri çeksin istiyorum. Bunu nasıl düzeltebiliriz? Buna ek olarak; ben 1. butona basıp dosyayı seçiyorum. Sonra 2. butona basıp verileri çekiyorum. Bunu tek buton haline nasıl getirebilirim. Yani seçtikten sonra direkt olarak verileri çekmeli. Şimdiden teşekkürlerimi sunarım.

Kod:
Dim dosya As String
Sub dosya_sec()
    dosya = Application.GetOpenFilename("dosya Seçiniz (*.xls;*.xlsx;*.xlm;*.xlsm),*.xls;*.xlsx;*.xlm;*.xlsm")
    If dosya <> "False" Then
        MsgBox "işlem tamam"
    Else
        MsgBox "dosya seçmediniz"
    End If
  
End Sub

Sub veri_al()
If dosya <> "" Then
        On Error GoTo hata
           Application.ScreenUpdating = False
               Set kaynak = Workbooks.Open(dosya, True, True)
    kaynak.Worksheets("ABC").Range("A1:U5000").Copy ThisWorkbook.Sheets("HEDEF ABC").Range("A1")
    kaynak.Worksheets("XYZ").Range("A1:N1000").Copy ThisWorkbook.Sheets("HEDEF XYZ").Range("A1")
           kaynak.Close False
           Set kaynak = Nothing
          
hata:
          
           Application.ScreenUpdating = True
Else
     MsgBox "dosya seçili değil"
End If
End Sub
 
Merhaba @Rheago

Deneyebilirmisiniz.

Set... satırının altına aşağıdaki satırları eklerseniz istediğiniz olacaktır.

Kod:
 If kaynak.Worksheets("ABC").AutoFilterMode Then kaynak.Worksheets("ABC").AutoFilterMode = False
    If kaynak.Worksheets("XYZ").AutoFilterMode Then kaynak.Worksheets("XYZ").AutoFilterMode = False
 
Merhaba @Rheago

Deneyebilirmisiniz.

Set... satırının altına aşağıdaki satırları eklerseniz istediğiniz olacaktır.

Kod:
 If kaynak.Worksheets("ABC").AutoFilterMode Then kaynak.Worksheets("ABC").AutoFilterMode = False
    If kaynak.Worksheets("XYZ").AutoFilterMode Then kaynak.Worksheets("XYZ").AutoFilterMode = False
Çok teşekkür ederim.
 
Rica ederim. Dönüş yaptığınız için teşekkür ederim.
İyi Çalışmalar.
 
Geri
Üst