• DİKKAT

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

Oluşturduğum Listeye Göre Otomatik Yeni Sheet Açma

  • Konbuyu başlatan Konbuyu başlatan kaos3
  • Başlangıç tarihi Başlangıç tarihi
Katılım
30 Haziran 2008
Mesajlar
63
Excel Vers. ve Dili
excel 2010 tr
Arkadaşlar Merhaba Forumda çok araştırdım benzerleri var ama tam olarak benim istediğim gibi bir çalışma yok diğerlerini uyarlama istedim ama macro ve visual basic den fazla anlamıyorum yapamadım benim isteğim oluşturduğum listede verdiğim sıra numarasına göre otomatik yeni sheetler açılacak bu sheetler şablonunun kopyalanması ile oluşturulacak ve şablondaki ilgili kısımlara listede verdiğim değerler taşınacak ekte örnek tede açıkladım yardımcı olurasanız sdevinirim her yıl bunun gibi yaklaşık 5000 veri girişi yapmam gerekiyor ve 2 senedir çoğunu yapamadım şimdiden teşekkür ederim
 

Ekli dosyalar

Arkadaşlar Merhaba Forumda çok araştırdım benzerleri var ama tam olarak benim istediğim gibi bir çalışma yok diğerlerini uyarlama istedim ama macro ve visual basic den fazla anlamıyorum yapamadım benim isteğim oluşturduğum listede verdiğim sıra numarasına göre otomatik yeni sheetler açılacak bu sheetler şablonunun kopyalanması ile oluşturulacak ve şablondaki ilgili kısımlara listede verdiğim değerler taşınacak ekte örnek tede açıkladım yardımcı olurasanız sdevinirim her yıl bunun gibi yaklaşık 5000 veri girişi yapmam gerekiyor ve 2 senedir çoğunu yapamadım şimdiden teşekkür ederim
 

Ekli dosyalar

merhaba;
aşağıdaki kodu modül üzerinden çalıştırınız.

Kod:
Sub SablonCopy()
On Local Error Goto 10
Dim alan As Range
sonsat = Worksheets(2).Cells(65536, "c").End(3).Row
Set alan = Range("c2:c" & sonsat)
For i = 1 To sonsat - 1
kod = alan.Cells(i).Offset(0, -1)
Worksheets(1).Copy Before:=Sheets(3)
Sheets("şablon (2)").Name = kod
Worksheets(kod).Range("h6").Value = alan.Cells(i).Offset(0, 1)
Worksheets(kod).Range("h7").Value = alan.Cells(i)
Worksheets(kod).Range("h8").Value = alan.Cells(i).Offset(0, 4)
Worksheets(kod).Range("w6").Value = alan.Cells(i).Offset(0, 2)
Worksheets(kod).Range("w8").Value = alan.Cells(i).Offset(0, 5)
Worksheets(kod).Range("ad3").Value = alan.Cells(i).Offset(0, 3)
Worksheets(kod).Range("ad7").Value = alan.Cells(i).Offset(0, -2) & _
"." & kod & ".HM"
Worksheets(kod).Range("ad17").Value = alan.Cells(i).Offset(0, 6)
Next
10:
End Sub
 
Merhaba;
Eki inceleyin.
İyi çalışmalar.
Not : Kodlar alıntıdır.
 

Ekli dosyalar

excel 03 ilgin için teşekkür ederim. v.b. anlamadığım için modülü çalıştıramadım.
 
muygun çok teşekkür ederim tam istediğim gibi oldu ellerine sağlık...
 
muygun arkadaşım liste tam istediğim gibi ancak şöyle bişey daha yapabilirmiyiz ben sayfa ismini yazdığımda yeni sayfayı açıyor ve o sayfaya gidiyor ben sayfa ismini yazayım o yeni sayfayı açsın ama o sayfaya gitmesin yine ana sayfada kalsın imleç bunuda ekleyebilirsek çok büyük bi kolaylık olacak şimdiden teşekkür ederim.
 
Merhaba;
Eki tekrar deneyin.
İyi çalışmalar.
 

Ekli dosyalar

Merhaba muygun şimdi kontrol ettim sorunsuz ve eksizksiz Mükemmel oldu beni büyük bi yükten kurtardın ALLAH razı olsun çok teşekkür ederim ellerine sağlık.
 
üstat elinize sağlık süper bir çalışma olmuş lakin bir sorum olacak şablon sayfasının gizli olmasını istersek nasıl bir kod ilave etmemiz gerekir
 
muygun hocam, çok güzel çalışma olmuş eline sağlık a sutununa veri ekleyince otomatik sayfa ekilyor.A sutunundan veri silicede sayfayı nası siler.
 
sevgili mahmutözdemir sayfayı gizledikten sonra yeni veri girdiğimizde şablon sayfasından çoğaltmıyor ama o zaman en son açılmış olan sayfanın ismini değiştirerek yeni sayfa oluşturuyor. Olmuyor yani senin anlayacağın
 
Merhaba, Sy Muygun Hocamın kodlarına isteğinize göre kırmızı ile belirttiğim satırları ilave ettim.

Şablon sayfasını gizledikten sonra kodları deneyiniz.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("a1:a65536")) Is Nothing Then Exit Sub
[COLOR="Red"]Sheets("şablon").Visible = True[/COLOR]
sayfa_adı = Target.Text
    If Target.Count <> 1 Then Exit Sub
For i = 2 To Cells(65536, 1).End(xlUp).Row
        If Target.Address <> Cells(i, 1).Address Then
            If Target = "" Then GoTo son
                If Cells(i, 1) = Target Then
              MsgBox Target.Text & vbCrLf & "Bu İsim Daha Önceden Girilmiş!!!", vbCritical, "UYARI!!!"
              Target = Empty
              Target.Select
              GoTo son
            End If
        End If
Next

    Sheets("şablon").Copy After:=Sheets(Sheets.Count)
    
    ActiveSheet.Name = sayfa_adı
son:
 [COLOR="Red"]   Sheets("şablon").Select
    ActiveWindow.SelectedSheets.Visible = False[/COLOR]
ThisWorkbook.Worksheets("ana sayfa").Activate
End Sub
 
Son düzenleme:
valla süpersin muygun hocam. Harika bir şey oldu. Bir tek konu kaldı çözemediğim. Mahmutözdemirin de yazdığı gibi a sütunundan veri silince sayfanın silinmesi. onu da çözebilirsek harika olacak. Eline sağlık hocam
 
bir konu da k sütununda olan köprünün a sütununda girdiğimiz veri üzerinde olması. bu da halledilirse süper valla
 
Slm, ya a sunundaki veri silinince o sayfa silinsin yada c sunundaki x basınca o sayfa ve o satırdaki veriler silinsin.
ikincisi ise örneğin a6 veri girdiğimzde sayfa oluşturuyor.Ancak veri değişince
o sayfa kalıyor ve birde düzettiğimiz şeklide yeni bir sayfa oluşuyor.
yani mahmut yerine mehmut yazıp geri onu mahmut olarak düzeltirsem hem mahmut hemde mehmut olarak iki ayrı sayfa oluşuyor.
 

Ekli dosyalar

Geri
Üst