• DİKKAT

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

Raporlama Hk.

Katılım
2 Nisan 2012
Mesajlar
6
Excel Vers. ve Dili
excel 2010 - Turkce
Merhaba,

Ekte örnek olarak gönderdiğim excell tablo üzerine bazı raporlamalar ve sheetler arasında veri kopyalama gibi, ugraştıgım ama bir türlü başaramadığım bir sorunum var. Konu hakkında yardımcı olursanız çok sevinirim.
 

Ekli dosyalar

  • Deneme.xlsx
    Deneme.xlsx
    14.7 KB · Görüntüleme: 24
  • Deneme.jpg
    Deneme.jpg
    100.3 KB · Görüntüleme: 17
. . .

Merhaba.

Otopark 2 için aşağıdaki kodları deneyiniz.

Nasıl bir raporlama istediğiniz ve şablonu ile ilgili biraz daha bilgi vermelisiniz.

Kod:
Sub kod_bir()
Application.ScreenUpdating = False

Dim so2 As Worksheet
Dim so3 As Worksheet
Dim sg As Worksheet
Dim so As Worksheet
Dim sm As Worksheet

Set so2 = Sheets("Otopark 2")
Set so3 = Sheets("Otopark 3")
Set so = Sheets("Olimpiyat")
Set sm = Sheets("Merkez")
Set sg = Sheets("genel")

so2.Range("a3:o1000").ClearContents
so3.Range("a3:o1000").ClearContents
so.Range("a3:o1000").ClearContents
sm.Range("a3:o1000").ClearContents

a = so2.[a65536].End(3).Row + 2
For i = 3 To 1000
If sg.Cells(i, 12) = "Otopark 2" Then
so2.Cells(a, 1) = sg.Cells(i, 1)
so2.Cells(a, 2) = sg.Cells(i, 2)
so2.Cells(a, 3) = sg.Cells(i, 3)
so2.Cells(a, 4) = sg.Cells(i, 4)
so2.Cells(a, 5) = sg.Cells(i, 5)
so2.Cells(a, 6) = sg.Cells(i, 6)
so2.Cells(a, 7) = sg.Cells(i, 7)
so2.Cells(a, 8) = sg.Cells(i, 8)
so2.Cells(a, 9) = sg.Cells(i, 9)
so2.Cells(a, 10) = sg.Cells(i, 10)
so2.Cells(a, 11) = sg.Cells(i, 11)
so2.Cells(a, 12) = sg.Cells(i, 12)
so2.Cells(a, 13) = sg.Cells(i, 13)
so2.Cells(a, 14) = sg.Cells(i, 14)
so2.Cells(a, 15) = sg.Cells(i, 15)
a = a + 1
Else
End If
Next i
'
a = so3.[a65536].End(3).Row + 2
For i = 3 To 1000
If sg.Cells(i, 12) = "Otopark 3" Then
so3.Cells(a, 1) = sg.Cells(i, 1)
so3.Cells(a, 2) = sg.Cells(i, 2)
so3.Cells(a, 3) = sg.Cells(i, 3)
so3.Cells(a, 4) = sg.Cells(i, 4)
so3.Cells(a, 5) = sg.Cells(i, 5)
so3.Cells(a, 6) = sg.Cells(i, 6)
so3.Cells(a, 7) = sg.Cells(i, 7)
so3.Cells(a, 8) = sg.Cells(i, 8)
so3.Cells(a, 9) = sg.Cells(i, 9)
so3.Cells(a, 10) = sg.Cells(i, 10)
so3.Cells(a, 11) = sg.Cells(i, 11)
so3.Cells(a, 12) = sg.Cells(i, 12)
so3.Cells(a, 13) = sg.Cells(i, 13)
so3.Cells(a, 14) = sg.Cells(i, 14)
so3.Cells(a, 15) = sg.Cells(i, 15)
a = a + 1
Else
End If
Next i
'
a = so.[a65536].End(3).Row + 2
For i = 3 To 1000
If sg.Cells(i, 12) = "Olimpiyat" Then
so.Cells(a, 1) = sg.Cells(i, 1)
so.Cells(a, 2) = sg.Cells(i, 2)
so.Cells(a, 3) = sg.Cells(i, 3)
so.Cells(a, 4) = sg.Cells(i, 4)
so.Cells(a, 5) = sg.Cells(i, 5)
so.Cells(a, 6) = sg.Cells(i, 6)
so.Cells(a, 7) = sg.Cells(i, 7)
so.Cells(a, 8) = sg.Cells(i, 8)
so.Cells(a, 9) = sg.Cells(i, 9)
so.Cells(a, 10) = sg.Cells(i, 10)
so.Cells(a, 11) = sg.Cells(i, 11)
so.Cells(a, 12) = sg.Cells(i, 12)
so.Cells(a, 13) = sg.Cells(i, 13)
so.Cells(a, 14) = sg.Cells(i, 14)
so.Cells(a, 15) = sg.Cells(i, 15)
a = a + 1
Else
End If
Next i
'
a = sm.[a65536].End(3).Row + 2
For i = 3 To 1000
If sg.Cells(i, 12) = "Merkez" Then
sm.Cells(a, 1) = sg.Cells(i, 1)
sm.Cells(a, 2) = sg.Cells(i, 2)
sm.Cells(a, 3) = sg.Cells(i, 3)
sm.Cells(a, 4) = sg.Cells(i, 4)
sm.Cells(a, 5) = sg.Cells(i, 5)
sm.Cells(a, 6) = sg.Cells(i, 6)
sm.Cells(a, 7) = sg.Cells(i, 7)
sm.Cells(a, 8) = sg.Cells(i, 8)
sm.Cells(a, 9) = sg.Cells(i, 9)
sm.Cells(a, 10) = sg.Cells(i, 10)
sm.Cells(a, 11) = sg.Cells(i, 11)
sm.Cells(a, 12) = sg.Cells(i, 12)
sm.Cells(a, 13) = sg.Cells(i, 13)
sm.Cells(a, 14) = sg.Cells(i, 14)
sm.Cells(a, 15) = sg.Cells(i, 15)
a = a + 1
Else
End If
Next i

Application.ScreenUpdating = True
MsgBox "B i t t i"
End Sub

. . .
 
Son düzenleme:
Merhaba Hüseyin bey.

Vermiş olduğunuz kodları girerek otopark 2 şantiyesi için istediğimi gerçekleştirdim. Çok teşekkür ederim. Benim amacım alttaki çalışma sheetlerindeki her şantiye ye ilgili satırları kopyalayabilmek. Ardından Rapor sheet inde Örneğin Olimpiyat butonuna basarak hangi tarihte ne kadar hangi malzemeden kimden nasıl alınmış kim teslim almış gibi detayları görebilmek.
 
Aslında şablon çok önemli değil. Asıl önemli olan Hangi malzemenin hangi tarihte alındığı ve hangi şantiyeye teslim edildiği bilgisi.
 
. . .

#2 nolu mesajdaki kodları revize ettim. Deneyiniz.
Raporlama için, örnek üzerinde bir kaç satırlık veri oluşturun.

. . .
 
Bu kodları genel il altınamı yoksa her sayfa için ayrı ayrı mı yazmalıyım?
 
. . .

Kodları boş bir modüle yapıştırın.
Örnek içerisinde olan sayfalara kayıtları dağıtacaktır.

. . .
 
Bu kodları genel il altınamı yoksa her sayfa için ayrı ayrı mı yazmalıyım?

Ayrıca seyi sormak istiyorum. İlgili kodların çalışması için dataların girişini genel sayfada yaptıktan sonra ALT+F11 tuşlarına basarak VBA yı açıyorum. Sonra F5 tuşuna basarak kodları çalıştırıyorum. Bunun daha kolay ve kısa bir yolu varmı yoksa bu şekilde yapmaya devam mı etmeliyim?
 
. . .

Forumda butona makro atama konuları araştırınız.
Örnek dosyanız ektedir.
. . .
 

Ekli dosyalar

Yardımlarınız için çok teşekkürler Hüseyin. :)
 
Geri
Üst