merhaba arkadaşlar
aşagıdaki kodu kendi kitabında denedim çalışıyor diğer kitapların kiminde çalışıyor kiminde çalışmıyor
örnek
kıyaslama makrosun kitabında çalışıyor xls
deneme kitabında çalışıyor xlsx
kıyaslanacak liste kitabında çalışmıyor xlsm
sorun kıyaslanacak listenin xls olarak görünmesi acaba aktif çalışma kitabının uzantısını otomatik değiştirp çalıştıran bir kod ekleyebirmisiniz
( kullandığım programda tüm raporlar xls çıkıyor.)
kodlar
Sub DÜŞEY_ARA()
DOSYA_YOLU = CreateObject("wscript.shell").SpecialFolders(0)
Dim s1, s2, son, son1, alan, i As Long
Set s1 = ActiveSheet
yol = ActiveWorkbook.Path
ktp = ActiveWorkbook.Name
Set s2 = Workbooks("KIYASLAMA MAKROSU.xlsm").Sheets("BAZ ALINACAK LİSTE")
Application.ScreenUpdating = False
s1.Range("X:X").ClearContents
son = s1.Cells(Rows.Count, 1).End(xlUp).Row
son1 = s2.Cells(Rows.Count, 1).End(xlUp).Row
'hangi aralıkta çalışacaksan
alan = "a4:W" & son1
For i = 5 To son
'a hücresine göre ara a daki yazanın benzerini
If WorksheetFunction.CountIf(s2.Range("A4:A" & son1), s1.Cells(i, 1)) > 0 Then
'eğer a hücreisnde aynı abone no varsa açık olan sayfanın 24 satırına kıyasladığın sayfadaki 21 satırdaki değeri yaz
s1.Cells(i, 2) = Application.WorksheetFunction.VLookup(s1.Cells(i, 1), s2.Range(alan), 2, 0)
Else
s1.Cells(i, 24) = "KAYDI YOK"
End If
Next
Application.ScreenUpdating = True
MsgBox "İşlem Tamamlandı", vbInformation, ""
End Sub
aşagıdaki kodu kendi kitabında denedim çalışıyor diğer kitapların kiminde çalışıyor kiminde çalışmıyor
örnek
kıyaslama makrosun kitabında çalışıyor xls
deneme kitabında çalışıyor xlsx
kıyaslanacak liste kitabında çalışmıyor xlsm
sorun kıyaslanacak listenin xls olarak görünmesi acaba aktif çalışma kitabının uzantısını otomatik değiştirp çalıştıran bir kod ekleyebirmisiniz
( kullandığım programda tüm raporlar xls çıkıyor.)
kodlar
Sub DÜŞEY_ARA()
DOSYA_YOLU = CreateObject("wscript.shell").SpecialFolders(0)
Dim s1, s2, son, son1, alan, i As Long
Set s1 = ActiveSheet
yol = ActiveWorkbook.Path
ktp = ActiveWorkbook.Name
Set s2 = Workbooks("KIYASLAMA MAKROSU.xlsm").Sheets("BAZ ALINACAK LİSTE")
Application.ScreenUpdating = False
s1.Range("X:X").ClearContents
son = s1.Cells(Rows.Count, 1).End(xlUp).Row
son1 = s2.Cells(Rows.Count, 1).End(xlUp).Row
'hangi aralıkta çalışacaksan
alan = "a4:W" & son1
For i = 5 To son
'a hücresine göre ara a daki yazanın benzerini
If WorksheetFunction.CountIf(s2.Range("A4:A" & son1), s1.Cells(i, 1)) > 0 Then
'eğer a hücreisnde aynı abone no varsa açık olan sayfanın 24 satırına kıyasladığın sayfadaki 21 satırdaki değeri yaz
s1.Cells(i, 2) = Application.WorksheetFunction.VLookup(s1.Cells(i, 1), s2.Range(alan), 2, 0)
Else
s1.Cells(i, 24) = "KAYDI YOK"
End If
Next
Application.ScreenUpdating = True
MsgBox "İşlem Tamamlandı", vbInformation, ""
End Sub
