• DİKKAT

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

Makro İhtiyacı

Katılım
5 Kasım 2007
Mesajlar
4,727
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Merhabalar,

"Rapor" sayfasından "Çıkış" sayfasına, "Rapor" sayfasında bir düğme ile veri aktarmak istiyorum,

Teşekkür ederim.
 

Ekli dosyalar

Son düzenleme:
Merhaba.

Aşağıdaki kod işinizi görecektir.
Aktarılan kaydın silinip silinmeyeceğini belirtmemişsiniz o yüzden kod'da buna ilişkin işlem yok.
.
Kod:
Sub ÇIKIŞA_AKTAR()
Set s2 = Sheets("RAPOR")
Set s3 = Sheets("ÇIKIŞ")
ilksatır = s2.[A65536].End(3).Row
sonsatır = s2.[C65536].End(3).Row
tarih = s2.[H1]
For satır = ilksatır To sonsatır
s3satır = s3.[A65536].End(3).Row + 1
    s3.Cells(s3satır, 1) = tarih
    s3.Cells(s3satır, 2) = s2.Cells(satır, 2)
    s3.Cells(s3satır, 3) = s2.Cells(satır, 3)
    s3.Cells(s3satır, 4) = s2.Cells(satır, 4)
    s3.Cells(s3satır, 5) = s2.Cells(satır, 6)
    s3.Cells(s3satır, 6) = s2.Cells(satır, 8)
Next
End Sub
 
Merhaba.

Aşağıdaki kod işinizi görecektir.
Aktarılan kaydın silinip silinmeyeceğini belirtmemişsiniz o yüzden kod'da buna ilişkin işlem yok.
.
Kod:
Sub ÇIKIŞA_AKTAR()
Set s2 = Sheets("RAPOR")
Set s3 = Sheets("ÇIKIŞ")
ilksatır = s2.[A65536].End(3).Row
sonsatır = s2.[C65536].End(3).Row
tarih = s2.[H1]
For satır = ilksatır To sonsatır
s3satır = s3.[A65536].End(3).Row + 1
    s3.Cells(s3satır, 1) = tarih
    s3.Cells(s3satır, 2) = s2.Cells(satır, 2)
    s3.Cells(s3satır, 3) = s2.Cells(satır, 3)
    s3.Cells(s3satır, 4) = s2.Cells(satır, 4)
    s3.Cells(s3satır, 5) = s2.Cells(satır, 6)
    s3.Cells(s3satır, 6) = s2.Cells(satır, 8)
Next
End Sub

Merhaba Ömer bey,

Haklısınız, aktarılanlar silinir ise hoş olur, silmek için ayrıca bir kod yazmayalım,

Teşekkür ederim.
 
End Sub satırı ile Next satırının arasına ekleyeceğiniz aşağıdaki satır RAPOR sayfasındaki aktarılan veriyi siler.
.
Kod:
s2.Range("A" & ilksatır & ":I" & sonsatır).ClearContents
 
Merhaba Ömer bey,

Teşekkür ederim,

Öğrenmek ve kendimi geliştirmek adına ;

"Çıkış" sayfasında "A" sütunundaki tarihi, "B" sütunundaki gibi tek satır halinde almak için aşağıdaki kod'da nasıl bir değişiklik yapılması gerekir ?

Kod:
Sub ÇIKIŞA_AKTAR()
Set s2 = Sheets("RAPOR")
Set s3 = Sheets("ÇIKIŞ")
ilksatır = s2.[A65536].End(3).Row
sonsatır = s2.[C65536].End(3).Row
tarih = s2.[H1]
For satır = ilksatır To sonsatır
s3satır = s3.[A65536].End(3).Row + 1
    s3.Cells(s3satır, 1) = tarih
    s3.Cells(s3satır, 2) = s2.Cells(satır, 2)
    s3.Cells(s3satır, 3) = s2.Cells(satır, 3)
    s3.Cells(s3satır, 4) = s2.Cells(satır, 4)
    s3.Cells(s3satır, 5) = s2.Cells(satır, 6)
    s3.Cells(s3satır, 6) = s2.Cells(satır, 8)
Next
End Sub
 
Aşağıdaki gibi düzenleyince o şekilde olur.
.
Kod:
[FONT="Arial Narrow"]Sub ÇIKIŞA_AKTAR()
Set s2 = Sheets("RAPOR")
Set s3 = Sheets("ÇIKIŞ")
ilksatır = s2.[A65536].End(3).Row
sonsatır = s2.[C65536].End(3).Row
s3.Cells(s3.[[B][COLOR="Red"]C[/COLOR][/B]65536].End(3).Row + 1, 1) = s2.[H1]

For satır = ilksatır To sonsatır
s3satır = s3.[[B][COLOR="red"]C[/COLOR][/B]65536].End(3).Row + 1
    s3.Cells(s3satır, 2) = s2.Cells(satır, 2)
    s3.Cells(s3satır, 3) = s2.Cells(satır, 3)
    s3.Cells(s3satır, 4) = s2.Cells(satır, 4)
    s3.Cells(s3satır, 5) = s2.Cells(satır, 6)
    s3.Cells(s3satır, 6) = s2.Cells(satır, 8)
Next

End Sub[/FONT]
 
Son düzenleme:
Ömer bey tekrar merhaba,

Umarım sıkıcı olmuyorum dur, "A" sütununda tarihler yemeğin sol hizasına değil alt alta geldi,

Ben bir hata yapmış olabilir miyim ?

 
Kod:
s3.Cells(s3.[[COLOR="red"]A[/COLOR]65536].End(3).Row + 1, 1) = s2.[H1]  ' tarihin yazılacağı satır A sütunundaki ilk boş satır

yerine

Kod:
s3.Cells(s3.[[COLOR="red"]C[/COLOR]65536].End(3).Row + 1, 1) = s2.[H1]  ' tarihin yazılacağı satır A sütunundaki ilk boş satır

deneyin.
 
Tekrar merhaba.

Sayın YUSUF Bey sağ olsun cevabı vermiş,
yukarıdaki 6 numaralı cevapta gerekli değişikliği yaptım.
 
Kod:
s3.Cells(s3.[[COLOR="red"]A[/COLOR]65536].End(3).Row + 1, 1) = s2.[H1]  ' tarihin yazılacağı satır A sütunundaki ilk boş satır

yerine

Kod:
s3.Cells(s3.[[COLOR="red"]C[/COLOR]65536].End(3).Row + 1, 1) = s2.[H1]  ' tarihin yazılacağı satır A sütunundaki ilk boş satır

deneyin.

Sayın YUSUF44 merhaba,

Sorun halloldu, teşekkür ederim.
 
Tekrar merhaba.

Sayın YUSUF Bey sağ olsun cevabı vermiş,
yukarıdaki 6 numaralı cevapta gerekli değişikliği yaptım.

Sayın Ömer BARAN, merhaba,

Çok zahmet verdim, sağ olun,

Yardımlarınız için çok teşekkür ederim.

Saygılarımla.
 
Sayın Ömer Baran, bu vesileyle ben de size hem nezaketiniz hem de yardımseverliğiniz için teşekkür ederim.
 
Sayın Ömer Baran, bu vesileyle ben de size hem nezaketiniz hem de yardımseverliğiniz için teşekkür ederim.
Estağfurullah YUSUF Bey.
Bu açılardan birbirimize benzemesek buralarda ne işimiz var!

Yardım isteyenlerin de zaman içerisinde, forumda başkalarına yardımcı olmaya başlamaları dileğiyle.
.
 
Geri
Üst