• DİKKAT

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

Veri sayfasını şubelere göre dağıtımı

Katılım
13 Şubat 2009
Mesajlar
198
Excel Vers. ve Dili
2007
Veri sayfasında bulunan bilgileri şubeler sutununa göre ait olduğu sayfalara dağıtımını yapmak istiyorum. Yeni şube var ise o şubeyede yeni sayfa açabilirmi. Teşekkürler
 

Ekli dosyalar

ÇOK TEŞEKKÜR EDERİM. Yalnız kendi dosyama göre ayarlayamadım. Bu makro tam istediğim gibi birazdaha uğraşayım inş. kendi dosyama göre uyarlayabilirim


Sub DAGIT()
Dim s1 As Worksheet
Dim sY As Worksheet
Dim ALAN As Range
Dim r As Integer
Dim c As Range
Set s1 = Sheets("VERİ")
Set ALAN = Range("VERİTABANI")


s1.Columns("d:d").Copy _
Destination:=Range("L1")
s1.Columns("L:L").AdvancedFilter _
Action:=xlFilterCopy, _
CopyToRange:=Range("J1"), Unique:=True
r = Cells(Rows.Count, "J").End(xlUp).Row


Range("L1").Value = Range("d1").Value

For Each c In Range("J2:J" & r)

s1.Range("L2").Value = c.Value

If SAYFA(c.Value) Then
Sheets(c.Value).Cells.Clear
ALAN.AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Sheets("VERİ").Range("L1:L2"), _
CopyToRange:=Sheets(c.Value).Range("A1"), _
Unique:=False
Else
Set sY = Sheets.Add
sY.Move After:=Worksheets(Worksheets.Count)
sY.Name = c.Value
ALAN.AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Sheets("VERİ").Range("L1:L2"), _
CopyToRange:=sY.Range("A1"), _
Unique:=False
End If
Next
s1.Select
s1.Columns("J:L").Delete
End Sub
Function SAYFA(SAYFAADI As String) As Boolean
On Error Resume Next
SAYFA = CBool(Len(Worksheets(SAYFAADI).Name) > 0)
End Function
 
Sayın yurttas kendi dosyama göre ayarlayamadım. veritabanında ve vermiş olduğum örnek dosyada sutunlar daha fazla olduğu için ayarlayamadım. Yardımcı olabilirmisiniz. İyi çalışmalar,
 
Sayın yurttas 278 satıra kadar olan verileri dağıtıyor. Veri aktarım satırı kısıtlımı?
 
Sayın yurttas 278 satıra kadar olan verileri dağıtıyor. Veri aktarım satırı kısıtlımı?

.

Insert > Define --- Ekle > Ad tanımla ya girin.

VERİTABANI olarak tanımlanmış olan =VERİ!$A$1:$S$279 alanı, =VERİ!$A$1:$S$2000, ya da 10000 gibi istediğiniz şekilde yaparak artırmanız mümkün.

Ayrıca dinamik alan da kullanabilrisiniz Bunun için Excel Dersanesine eklediğim dosyaları inceleyin derim.

.
 
Geri
Üst