• DİKKAT

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

İrsaliye Makbuzu // xlDown//Range

  • Konbuyu başlatan Konbuyu başlatan aadsan7
  • Başlangıç tarihi Başlangıç tarihi
Katılım
30 Eylül 2015
Mesajlar
6
Excel Vers. ve Dili
excel 2010 2007 2003 Türkçe ingilizce
s.a arkadaşlar

aşağıdaki gibi bi kodum var MAKBUZDAN ALIP DOKUM SAYFASINA KOPYALIYOR AMA SADECE AYNI SATIRA KOPYALIYOR

BENDE End(xlDown).Offset(1, 0) bu kodu uyguluyorum ama olmuyor
benhep bi satır aşağısına kopyalamk istiyoru Numara vercem 1 2 3 4 diye
bide eğer üstte 4 varsa sende fiş no 4 yazarsan veri girmesin msgbox uyarı daha once kaydedildi biraz araştırma yaptım ama yapamadım.

Private Sub CommandButton2_Click()

Sheets("DOKUM").Range("A4") = Sheets("MAKBUZ").Range("J4")
Sheets("DOKUM").Range("B4") = Sheets("MAKBUZ").Range("E5")
Sheets("DOKUM").Range("C4") = Sheets("MAKBUZ").Range("A13")
Sheets("DOKUM").Range("D4") = Sheets("MAKBUZ").Range("B13")
Sheets("DOKUM").Range("E4") = Sheets("MAKBUZ").Range("J13")

End Sub
 
Private Sub şeklindeki başlıktan sonra aşağıdaki satırı ekleyin.
Kod:
[COLOR="Red"]satır[/COLOR]=Sheets("DOKUM").[A65536].End(3).Row+1
Sonraki ilk satırda eşitliğin solunda kalan kısmı da aşağıdaki gibi değiştirin, sonraki satırları da buna göre düzeltin.
Kod:
Sheets("DOKUM").Range("A" & [B][COLOR="red"]satır[/COLOR][/B])=Sheets("MAKBUZ").Range("J4")
Ayrıca sanırım MAKBUZ sayfanızdaki veri DOKUM sayfasına aktarılınca MAKBUZ sayfasındaki verilerin de silinmesi lazım.
Bunun için de; End Sub satırından önce;
Kod:
Sheets("MAKBUZ").Range("J4")=Sheets("MAKBUZ").Range("J4")+1
satırı ile MAKBUZ sayfasındaki makbuz numarasını bir artırmak ve
Kod:
Sheets("MAKBUZ").Range("E5")=""
gibi aktarılan diğer verileri silmeye yarayan üç satır olması lazım ve en son da End Sub satırından önce de
Kod:
MsgBox "VERİLER AKTARILDI"
diye bir satır olabilir.
 
Tekrar merhaba.
Her satıra bir şey söyleyince yeniden yazmak en iyisi dedim.
En iyisi; kod'u aşağıdaki ile değiştirin.
Kod:
Private Sub CommandButton2_Click()
Dim sd As Worksheet: Set sd = Sheets("DOKUM")[COLOR="YellowGreen"]'sayfa adını her defasında yazmak yerine kısaltma kullanmak için.[/COLOR]
Dim sm As Worksheet: Set sm = Sheets("MAKBUZ")[COLOR="YellowGreen"] 'sayfa adını her defasında yazmak yerine kısaltma kullanmak için.[/COLOR]

satır = sd.[A65536].End(3).Row + 1[COLOR="YellowGreen"] 'kayıt yapılacak ilk boş satırın tespiti.[/COLOR]

sd.Range("A" & satır) = sm.Range("J4")[COLOR="YellowGreen"]' verilerin aktarılması[/COLOR]
sd.Range("B" & satır) = sm.Range("E5")[COLOR="YellowGreen"]' verilerin aktarılması[/COLOR]
sd.Range("C" & satır) = sm.Range("A13")[COLOR="YellowGreen"]' verilerin aktarılması[/COLOR]
sd.Range("D" & satır) = sm.Range("B13")[COLOR="YellowGreen"]' verilerin aktarılması[/COLOR]
sd.Range("E" & satır) = sm.Range("J13")[COLOR="YellowGreen"]' verilerin aktarılması[/COLOR]

sm.Range("J4") = sm.Range("J4") + 1[COLOR="YellowGreen"]' MAKBUZ no 1 artırıldı[/COLOR]
sm.Range("E5") = ""[COLOR="YellowGreen"]' diğer bilgilerin silinmesi[/COLOR]
[COLOR="red"]sm.Range("A13") = ""[/COLOR][COLOR="YellowGreen"]' diğer bilgilerin silinmesi[/COLOR]
sm.Range("B13") = ""[COLOR="YellowGreen"]' diğer bilgilerin silinmesi[/COLOR]
sm.Range("J13") = ""[COLOR="YellowGreen"]' diğer bilgilerin silinmesi[/COLOR]

MsgBox "VERİLER AKTARILDI" [COLOR="YellowGreen"]' İşlem Bilgisi[/COLOR]

End Sub
Örneğin E5 eğer tarih ise yukarıdaki kırmızı kısım yerine sm.Range("E5") = Date yazın.
 
Son düzenleme:
cok tesekkur ederim yardımın icin
 
Son yazdığım cevapta değişiklik yaptım, sayfayı yenileyerek kontrol ediniz.

İyi günler dilerim.
 
Geri
Üst