Sayfa1 den sayfa2 ye özel raporlama

Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Sayfa1 deki
sonA = A sütunu Son dolu satır
"a3:A" & sonA aralığındaki verilerden biri "F3:F" & sonF aralığınakilerden birine eşitse overinin olduğu satırdaki b,c,d sütunlarını F de bulunan satır ile g,h,i karşılaştır eşitse
Sayfa2 a3:d65336 aralığındaki ilk satırdan itibaren yaz
sadece a süunundaki veri ile f süunundaki veri eşitse e3:e65536 aralığına yaz
hiç bir değilse hiç bir yere yazma
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
yapmak istediğim aslında tam olarak şu;
Vista işletim sisteminde Kopyalanacak dosyaların bulunduğu klasör ile hedef klasördeki dosya adları aynı ise
Kopyala ve değiştir, iki dosyayıda koru, kopyalama seçenekleri var

Yapmak istediğim türkçe ingilizce vba olarak anlattım
bunun için For Each dosya1 In Dosyalar1 , For Each dosya2 In Dosyalar2 karşılaştırılması yapılması gerektiğini düşünüyorum ama nasıl olmalı onu bilmiyorum
Kod:
if b kolonundaki sayfa adları =  f kolonundaki sayfa adları na eşitse then
    if b deki eşit dosya adının boyutu = f deki eşit dosya adının boyutu 
And b deki eşit dosya adının oluşturulma tarihi = f deki eşit dosya adının oluşturulma tarihi And b deki eşit dosya adının değişiklik zamanı = f deki eşit dosya adının değişiklik zamanı then
      zaman = Format(Dosyadeğişiklikzamanı, "ddmmyyhhmm")
     'değişkilk zamanı = 17/11/2007 23:30 ise zaman = "1711072330" 
      SavecopyAs DosyaAdı&"-"&zaman &".xls" olarak kopyala
    Else 
     SavecopyAs DosyaAd olarak değiştirilsinmi diye uyarmadan kopyala
    End if
End if
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
mümkün değilmi dosyada açıklam mevcut
istediğim dahda basit olarak şu
A kolonundaki dosya adlarından biri, F kolonundaki dosya adlarındna birine eşit ise
b kolonundaki değiştirilme tarihi ile g kolonundaki değiştirilme tarihine bak eğer onlarda eşitse dosyayı
sayfa2 a, b kolonuna yaz
yok sadece dosya adı eşit ise
sayfa2 g, h kolonuna yaz
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
mümkün değilmi dosyada açıklam mevcut
istediğim dahda basit olarak şu
A kolonundaki dosya adlarından biri, F kolonundaki dosya adlarındna birine eşit ise
b kolonundaki değiştirilme tarihi ile g kolonundaki değiştirilme tarihine bak eğer onlarda eşitse dosyayı
sayfa2 a, b kolonuna yaz
yok sadece dosya adı eşit ise
sayfa2 g, h kolonuna yaz
Merhabalar

Aşağıdaki kodları kullanabilirsiniz.

Kod:
Sub Kontrol()
Dim sh1 As Worksheet, sh2 As Worksheet
Dim bul As Range
Dim i%, x%, y%
Set sh1 = Sheets("Sayfa1")
Set sh2 = Sheets("Sayfa2")
sh2.Cells.ClearContents 'Bu kısmı siz kendinize göre düzenleyiniz
For i = 2 To sh1.Cells(65536, 1).End(xlUp).Row
    Set bul = sh1.Columns(6).Find(sh1.Cells(i, 1), lookat:=xlWhole)
    If Not bul Is Nothing Then
       If bul.Offset(0, 1) = sh1.Cells(i, 1).Offset(0, 1) Then
          y = y + 1
          sh2.Cells(y, "A") = sh1.Cells(i, 1)
          sh2.Cells(y, "B") = sh1.Cells(i, 2)
       Else
          x = x + 1
          sh2.Cells(x, "G") = sh1.Cells(i, 1)
          sh2.Cells(x, "H") = sh1.Cells(i, 2)
       End If
    End If
Next i
sh2.Select
Set bul = Nothing
Set sh1 = Nothing
Set sh2 = Nothing
End Sub
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
hocam teşekkür ederim sayfa2 de 3. satırdan itibaren başlatmak lazım nasıl olacxak?
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Prosedürün başlarında bir yerlere,

x=2
y=2

yazın. Böylelikle 3.satırdan itibaren yazmaya başlayacaktır
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
teşekkür ederim hocam sonradan farketim bende
 
Üst