Çift tıkla Kod açıklaması için yardım(Necdet YEŞERTENER'in dosyası)

Erdinç FIRTINA

Altın Üye
Katılım
14 Şubat 2007
Mesajlar
400
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
15-05-2026
Değerli arkadaşlar,
Sayın Necdet Yeşertener'in hazırlamış olduğu bir makro kodunun açıklanmasına ihtiyaç duydum. Dosya ekte yardım ederseniz sevinirim.

Buradaki dosyada çift tıkla aktar yapıldığı sırada, aktarılan verilerin bulunduğu bir sütundaki veriler esas alınarak tarih sırasına veya herhangi başka bir ölçüte göre sıralanabilir mi?

Teşekkürler.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,435
Excel Vers. ve Dili
Ofis 365 Türkçe
Günaydın,

Elbette yapılabilir, tarihe göre sıralayan şeklini gönderiyorum, inceleyiniz
 

Erdinç FIRTINA

Altın Üye
Katılım
14 Şubat 2007
Mesajlar
400
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
15-05-2026
Sayın Yeşertener çok çok teşekkürler!!!

Sayın Yeşertener,
Size nasıl teşekkür edeceğimi bilemiyorum. Sormak istediğim bir kaç şey var.

Örneğin; koddaki aşağıdaki satır silindiğinde sayfanın boşaltılmadan sadece aktarma yapacağım sütunların boşaltılmasını istiyorum. Çünkü aktarma yapılacak açık olan sayfaların diğer sütunlarına manuel olarak veriler girmek istiyorum. Dolayısyla sayfa boşaltılınca manuel girişlerim de siliniyor. Ben onların silinmemesini istiyorum.

s2.Cells.ClearContents 'aktarılacak sayfayı boşaltılıyor'

Ayrıca, aktarma yapacağım sütunların sayısını nasıl arttırabilirim?
Yapmak istediğimi sayfalara aktar makrosu gibi bir makro ile bir kerede yapabilir miyim?

Bu kadar çok soru sorduğum için şimdiden çok özür cevap verilmese bile her şey için çok teşekkürler!!!
 

Erdinç FIRTINA

Altın Üye
Katılım
14 Şubat 2007
Mesajlar
400
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
15-05-2026
Sayın Yeşertener çok özür ve çok teşekkürler!!!

Sayın Yeşertener,
Size sormuş olduğum soruların bazılarının çözümünü buldum. Örneğin, sütun sayısını arttırabildim.
Yine koddaki;
s2.Cells.ClearContents
satırını silerek aktarma yaptığım sayfadaki manuel girişlerimin silinmesini engelledim. Dolayısıyla şu anda sorduğum soru sadece şu:

Örneğin;
1. Sayfa 1 deki veriler A sütunundan değil de M,N veya X vb. sütunundan başlaması ve aktaracağım sayfalardaki veriler C, D veya M,N vb. sütunlardan başlaması için nasıl bir değişiklik yapmalıyım?

Yapmak istediğimi sayfalara aktar makrosu gibi bir makro ile bir kerede yapabilir miyim?

Tekrarıyla; (Bu kadar çok soru sorduğum için şimdiden çok özür cevap verilmese bile her şey için çok teşekkürler!!!)
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,435
Excel Vers. ve Dili
Ofis 365 Türkçe
Örneğin; koddaki aşağıdaki satır silindiğinde sayfanın boşaltılmadan sadece aktarma yapacağım sütunların boşaltılmasını istiyorum. Çünkü aktarma yapılacak açık olan sayfaların diğer sütunlarına manuel olarak veriler girmek istiyorum. Dolayısyla sayfa boşaltılınca manuel girişlerim de siliniyor. Ben onların silinmemesini istiyorum.

s2.Cells.ClearContents 'aktarılacak sayfayı boşaltılıyor'
Olmaz olmaz deme, Olmaz olmaz.

Fakat bence zor bir olay, çözümü var mıdır bilmiyorum. İlk düşündüğümde sanki olmaz gibi (ya da çok zor gibi geldi bana).

Silmeden mevcut dataların üstüne eklenirse (ki bu daha kolay) bu sefer çift kayıtların oluşmasına neden olur.


Ayrıca, aktarma yapacağım sütunların sayısını nasıl arttırabilirim?
Tırnak içinde "A", "B" vs gibi gördüğünüz harfler sütun sayısını vermektedir. Aynı mantıkle devam ederseniz sütun sayılarını arttırmış olursunuz.

Örneğin : s2.Cells(J, "Z") = Cells(i, "Z") derseniz Z sütununu da aktarmış olursunuz.

Anlatabildim mi bilmiyorum, iyi geceler diliyorum
 

Erdinç FIRTINA

Altın Üye
Katılım
14 Şubat 2007
Mesajlar
400
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
15-05-2026
Teşekkürler!!!

Sayın Yeşertener size de iyi geceler dilerim.

Kimbilir belki de ben olmaz bir şeylerle uğraşıyorum. Emeğinize yürekten teşekkürler!!!!
 
Katılım
19 Haziran 2007
Mesajlar
418
Excel Vers. ve Dili
excel 2007
çok harika olmuş... buna benzer bir yardım rica etsem

Günaydın,

Elbette yapılabilir, tarihe göre sıralayan şeklini gönderiyorum, inceleyiniz
arkadaşım güzel ya. burada nelerle karşılaşıyorum böyle. ağzım açık kaldı valla. benimde acil bi sorunum var. ekte yolladım dosyayı süzdürüp aynı şekilde kişilere birer sayfa açmam gerek. yardımcı olurmusun
 
Katılım
19 Haziran 2007
Mesajlar
418
Excel Vers. ve Dili
excel 2007
Sanirim Bİ Şeyler Oldu Ama...

ArkadaŞim Yularidan İndİrdİĞİm Sayfanin Kodlarini Kullandim Oldu.
Ama ŞÖyle Bİ Şey Yapabİlİrmİyİz Acaba...
ÜrÜnler SÜtunundakİ Bİlgİler YaklaŞik 4 DeĞİŞken.
KİŞİlerden Bİrİnİ YikladiĞimda O KİŞİnİ AldiĞi ÜrÜnlerİ Ayirip Aldiklarinin Toplamini Verebİlİrmİ Acaba.... Şİmdİden TeŞk. Ed.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,603
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Özet Tablo ile hazırlanmış ekteki dosyayı incelermisiniz. "özet" isimli sayfayı açtığınızda tablo otomatik olarak güncellenecektir. Umarım faydası olur.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhaba.
Sayın eminecik dosyanız ekte .Butona basıyorsunuz.Rapor sayfasına rapor çıkarıyor.
İyi günlerde kullanın.:cool:
Kod:
Sub Rapor()
Dim c As Long, i As Long, j As Byte, t As Byte, s As Byte
Sheets("VERI").Select
Sheets("RAPOR").Range("A3:N65536").ClearContents
c = 1
Application.ScreenUpdating = False
For a = 2 To [a65536].End(xlUp).Row
If WorksheetFunction.CountIf(Range("A2:A" & a), Cells(a, 1)) = 1 Then
c = c + 1
Sheets("RAPOR").Cells(c + 1, "A") = Cells(a, "A")
End If
Next
For i = 2 To Cells(65536, "A").End(xlUp).Row
    Set k = Sheets("RAPOR").Range("A3:A65536").Find(Range("A" & i).Value, , , xlWhole)
    If Not k Is Nothing Then
        For j = 2 To 5
            If Range("B" & i).Value = Sheets("RAPOR").Cells(2, j).Value Then
                Sheets("RAPOR").Cells(k.Row, j).Value = Cells(i, "C").Value + Sheets("RAPOR").Cells(k.Row, j).Value
            End If
        Next j
        For t = 6 To 9
            If Range("B" & i).Value = Sheets("RAPOR").Cells(2, t).Value Then
                Sheets("RAPOR").Cells(k.Row, t).Value = Cells(i, "D").Value
            End If
        Next t
        For s = 10 To 13
            Sheets("RAPOR").Cells(k.Row, s).Value = Sheets("RAPOR").Cells(k.Row, s - 4).Value _
            * Sheets("RAPOR").Cells(k.Row, s - 8).Value
        Next s
        adrs = Range(Cells(k.Row, "J"), Cells(k.Row, "M")).Address
        Sheets("RAPOR").Range("N" & k.Row).Formula = "=sum(" & adrs & ")"
    End If
Next i
Application.ScreenUpdating = True
Sheets("RAPOR").Select
MsgBox "R A P O R    Ç I K A R I L D I  ..!!", vbOKOnly, Application.UserName
End Sub
 
Katılım
19 Haziran 2007
Mesajlar
418
Excel Vers. ve Dili
excel 2007
yaaaa ne diycemki ben şimdi...

ya arkadaşlar allah sizden razı olsun yaaa... yani son dakka golü gibi bi şey derlerya aynen öyle oldu... cost_kontrol kardeşe ve sezar' çok teşekkür ederim. her iki çalışmada inanın çok süper oldu yani. inanın hayretler içinde kaldım. sayın sezar kardeşimin yatığı rapor daha çok dikkatimi çekti... neden mi? çünkü raporun bir tablo şekline döndürmek gerekiyodu. ben exceli bu kadar tanımadan korkarak sormuşum meğer... ekte yolladığım dosyaya form 2 örneğini ekledim. yalnız çıktı almak için ard arda devam eden bir yatay A4 şeklinde ayarladım. bu ayarında bozulmaması gerek. arkadaşlar bu konuda bir yardımınız mümkünmü acaba...
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhaba.
Yazdırma ile ilgili 2 sayfanız var .
Sayfanın birisinde Yazıcı_veri sayfasına verileri giriyorsunuz.
ondan sonra yazdir sayfasına gidip.Butona basıyorsunuz ve yazdırılıyor.
Yazdır sayfası korumalı olduğu için Satır ve sütun boyutları değiştirilemiyor.
Değişiklik yapmak için sayfa korumasını kaldırınız.
Yazdir sayfası verileri yazıci-veri sayfasından formüller ile alıyor.
Kolay gelsin.:cool:
 
Son düzenleme:

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Sayın eminecik .
Dosyayı istediğiniz şekilde güncelledim.
Yazdir sayfasını sildim.
Veriler direk Yazıcı_veri sayfasına tutuluyor.Butona basarak yazdırabilirsiniz.
Sayfa korumasını kaldırıp istediğiniz değişikliği yapabilirsiniz.
Yalnız Yazıcı_veri sayfası ile Veri sayfasındaki çoğu müşteri adları birbirini tutmuyor.
Ya veri sayfasındaki isimleri Veri_sayfasında hazırlamış olduğunuz formlardaki isimlere uydurun veya tam tersini yapın .Kolay gelsin.:cool:
Dosuyayı güncelledim
 
Son düzenleme:
Katılım
19 Haziran 2007
Mesajlar
418
Excel Vers. ve Dili
excel 2007
son şekli için

sanırım ben tam izah edemediğimden. bi şey isterken böyle çekingen oluyorum işte. sonrada ne istediğimi tam olarak izah edemiyorum sanırım. anlayışınız, bilginiz ve emeğiniz karşısında ne diyeceğimi bilemiyorum. inanın çok müteşekkirim. söylemiş olduğum son şekli ile yazdırma form2 sayfasıda tamam olursa büyük bir yükten kurtulmuş olacağım.

excel.web.tr yi ve sizleri tanıdığım için çok mutluyum. bende bu siteyi tanıdıktan sonra bişeyler yapmaya çalışıyom. en azından şimdilik öğrenme safhasındayım. inş. yakında bende sizler gibi yararlı olurum. kod yazma konusunda nasıl bi yol izlemeliyim acaba bilemiyorum ve bunca bilgi içinde kaybolmak istemiyorum. kod nasıl yazılır nerelerde ne mana ifade eder... bunları öğrenebileceğim bir kaynak varmı... çalışmalarınızda başarılar diliyorum. inanın bir teşekkürle ödenmezki emeğiniz... BANA BİR HARF ÖĞRETENİN KIRK YIL KÖLESİ OLURUM (HZ. ALİ)
 
Katılım
19 Haziran 2007
Mesajlar
418
Excel Vers. ve Dili
excel 2007
kişiler tutmuyo doğru...

Sayın eminecik .
Dosyayı istediğiniz şekilde güncelledim.
Yazdir sayfasını sildim.
Veriler direk Yazıcı_veri sayfasına tutuluyor.Butona basarak yazdırabilirsiniz.
Sayfa korumasını kaldırıp istediğiniz değişikliği yapabilirsiniz.
Yalnız Yazıcı_veri sayfası ile Veri sayfasındaki çoğu müşteri adları birbirini tutmuyor.
Ya veri sayfasındaki isimleri Veri_sayfasında hazırlamış olduğunuz formlardaki isimlere uydurun veya tam tersini yapın .Kolay gelsin.:cool:
evet kişiler tutmuyo bu önemli değil. çünkü esas olan verilerin alındığı ilk listedir. form2 deki sadece şekil ve verilerin olduğu yerdir. şimdi dosyayı indirip bakıyom. elinize, emeğinize, yüreğinize sağlık. allah razı olsun kardeşim...
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Rica ederim.
İyi çalışmalar.:cool:
 
Katılım
19 Haziran 2007
Mesajlar
418
Excel Vers. ve Dili
excel 2007
iki küçük sorun

çok özür dilerim ama çok fazla oldunuz dediğinizi duyar gibiyim...
iki problemim var. birincisi veri sayfasından yeni veri girmek istiyorum.
tek tek yazdığımda oluyo ama bana gelen günlük listeden toplu olarak kopyala yapıştır
yaptığımda (resim1 ve resim2) hata oluyo ve işlemi yapamıyom. ikincisi ise form2 dediğim
yazıcı-veri sayfasındaki ürünlerin fiyat toplamı gerekmemektedir sadece ürünün
birim fiyatı gösterilmelidir.eğer gerekirse zaten bunu rapor sayfasında bulabiliyoruz.
bunlardan ayrı olarak form2 de bulunan kişileri silerek acaba ilk listede adı gecen kişiler
yerleşebilirmi burda esas olan veri sayfasındaki liste olmalı burdaki hertürlü değişiklik
yeni veri girilmesi yada (kopyala yapıştırda dahil) mevcut verilerin düzeltilmesi durumunda
rapor çıkar dediğimizde RAPOR SAYFASI ve yazdırmak için yazıcı-veri sayfası tekrar güncellenmelidir.
sizede çok zahmet verdim ama... hakkınızı helal ediniz.
not resimleri ekteki sayfadaki ilgili yerlere koydum...
 
Katılım
19 Haziran 2007
Mesajlar
418
Excel Vers. ve Dili
excel 2007
Çok Çok ÖzÜr

dışarıdan veri girerken kopyala yapıştır yaparken gözümden minik bi ayrıntı kaçmış. sanırım problem şu bana gelen listelerde ilk iki sütun A ve B sütunları birleştirilmiş ve sorun meydana geldi. birleştirmeyi kaldırıp fazla olan sütunu sildim sorun kalmadı... bu konu çözülmüştür. diğer konularda yardımınıza ihtiyacm var. teşk. ed.


SEZARIN HAKKI SEZARA .... :)
 
Son düzenleme:

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhaba.
Dosyayı güncelledim.Ekli dosyayı inceleyiniz.
Önemli:Yazıcı_veri sayfası veriyi rapor sayfasından almaktadır.
Yazıcıdan yazdırmadan önce mutlaka Rapor çıkarınız.
Ayrıca yeni formlar eklediğinizde bir üst formdan kopyala yapıştır yaparak formülleri çoğaltabilirsiniz.
Yazıcı_veri sayfasında, Rapor sayfasından ilk 500 veriyi formülize edilmiştir.
Eğer kişi adedi 500'ü geçerse Formülü'de ona göre değeiştirmek gerekecektir.
Kolay gelsin.:cool:
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Pardon dosyayı eklemeyi unutmuşum.
Şimdi 13ncü mesajımdan indirebilirsiniz.:cool::mrgreen:
 
Üst