• DİKKAT

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

Sil ve gönder

  • Konbuyu başlatan Konbuyu başlatan ormann
  • Başlangıç tarihi Başlangıç tarihi
Katılım
9 Ekim 2009
Mesajlar
1,626
Excel Vers. ve Dili
türkçe
2003
Ekteki dosyada anasayfada bulunon butonu tıkladığımda silinecek dosyanın sıra nosunu girip ,girilen sıra nosunun bulunduğu kayıt sayfasından çıkarılarak gönderilenyer sayfasına yapıştırılmasıdır.Kayıt sayfasından çıkarılan satırın diğer satırla birleşmesidir.Dosya silinmden bana silmek istiyormusunuz evet yada hayır diye bir seçenek sunması .eveti tıkladığımda verileriniz silinerek gönderilen sayfaya aktarıldı .Hayırı seçersem verilerinizi silmekten vazgeçtiniz diye bir uyarı vermesi.Silinen satırın diğer sayfada en son sutuna gönderilme tarihini yazması gerekli.Böyle bir makro uygulayalirimiyiz.Yardımcı olurmusunuz.
 

Ekli dosyalar

Yardımcı oluruz elbet.
Siz takıldığınız yeri söyleyin,yardımcı olalım.:cool:
 
Sayın Evren Bey yazmış olduğum mesaja göre makro düzenleyebilirmisiniz ?
 
Sayın alkol istediğim şekilde olmuş .Yalnız silmek istediğim sıra noyu seçtikten sonra silindikten sonra ve silme iptal dediğimde userforman çıkabilirmi. ? ayrıca evet seçtiğimde silindi .hayırı seçtiğimde silme iptal edildi diyerek formdan çıkmasını yapabilirmisiniz.sıra noyu seçmeden eveti tıkladığımda hata veriyo
 
Sanırım alkol derken beni kastetmediniz.:)
Elbette mümkün ama çıkmam gerekiyor. Yardımcı olan çıkmazsa ,yarın sabah görüşmek dileğiyle..
 
Özür dilerim isminizi yalnış yazdım.Görüşmek üzere
 
Butona değilde sayfada üzerine çift tıklama yaptım.
nedenmi?
Çünkü hedefe daha çabuk ulaşırsınız.
öteki türlü butona tıklama fazladan bir iş çıkaracaktı.
elbette oda kullanılır,bazen o daha kulanışlı olur ama bu sistemde dediğm gibi sayfada satıra çift tıklama daha keskin çözüm sunar.
kodlar çalışma sayfasının kod modülündedir.
Dosyanız ektedir.
İyi çalışmalr.:cool:
Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim sat As Long
'coder:evrengizlen@hotmail.com
'date: 24.04.2011
sat = Cells(65536, "B").End(xlUp).Row
If Intersect(Target, Range("A2:I" & sat)) Is Nothing Then Exit Sub
If Target.Row = 1 Then Exit Sub
Cancel = True
Range("A" & Target.Row & ":I" & Target.Row).Select
If MsgBox("Seçili satırı Silmek İstiyormusunuz?", vbYesNo) = vbNo Then
    MsgBox "Silme işlemi iptal edildi.", vbCritical, "U Y A R I"
    Exit Sub
End If
sat = Sheets("gönderilenyer").Cells(65536, "B").End(xlUp).Row + 1
If sat >= 65534 Then
    MsgBox "gönderilenyer adlı sayfada sayfa doldu!" & vbLf & "Seçilen kayıt aktarılmadı!", vbCritical, "U Y A R I"
    Exit Sub
End If
Selection.Copy Sheets("gönderilenyer").Range("A" & sat)
Sheets("gönderilenyer").Range("J" & sat).Value = Date
Sheets("gönderilenyer").Range("J" & sat).NumberFormat = "dd.mm.yyyy"
Application.CutCopyMode = False
Selection.Delete (xlUp)
'Range("A2").Select
MsgBox "Veriniz başarı ile gönderilenyer sayfasına kopyalanmıştır." & _
vbLf & "evrengizlen@hotmail.com" & vbLf & "24.04.2011", vbOKOnly + vbInformation

End Sub
 

Ekli dosyalar

Sayın Evren Bey kodu uygulayamadım .Nereye yapıştırcam
 
SAyın Evren Hocam kayıt sayfasından değilde ana sayfa dan butonla seçip aktarma yapabilirmiyiz.O şekilde olsa benim için daha kullanışlı olurdu.Size zahmet olacak ama o şekilde düzenleyebilirmisiniz
 
Sayın Evren Bey kodu uygulayamadım .Nereye yapıştırcam

SAyın Evren Hocam kayıt sayfasından değilde ana sayfa dan butonla seçip aktarma yapabilirmiyiz.O şekilde olsa benim için daha kullanışlı olurdu.Size zahmet olacak ama o şekilde düzenleyebilirmisiniz

Kodu verilerinizin bulunduğu çalışma sayfasının kod bölümüne yapıştırcaksınız.
En altta bulunan sayfa sekmelerinden sayfanızın sekmesine sağ tıklayın
açılan vbe 'deki modüle boş bir yere yapıştırın.
VBE'yi kapatın.
sonra syafaya gelin ve aktarmak istediğiniz satıra çift tıklayın.
verireri diğe sayfaa akarıp aktarılan veriyide silecektir.
Elbette butonlada olur.
bir user form yapılır listboxta listelenir ooradan seçilen için ayni işlkem yapılır.
ama bu durumda fazladan 1 hatta 2 işlem yapmayacakmısınız&
1- ana sayfaya geçeceksiniz
2-butona basacaksını
işte bunlar fazladan 2 işlem.
oysa diğer önerdiğim yöntem bu 2 işlemi ekarte ediyordu.
direk çift tıjkalayıp halledecektiniz.
Yinede ana syafadan işlemyapmak isityormusunuz?
İsterseniz eğer sizi ikna edemedi ism onuda yaparım.
Kolay gelsin.:cool:
 
Sayın Evren Hocan Alcolun 4 nolu mesajındaki örnek tam benim istediğim şekilde.Fakat Bazı yerlerinie eklemeler yapmak isityorum.Yardımcı olurmusunuz. ?
 
Sayın Evren Bey ekteki dosyada biraz değişiklik yaptım .Kes gönder butonuna bastığımda userform açılıyo.burda sıra noyu seçtiğim zaman diğer kısmlar(ad,Soyad ve diğerleri useforma gelebilirmi.Ayrıcaverilerinizi arşive göndermek istiyormusunuz butonunu tıkladığımda evet-hayır seçeneği geliyo eveti seçersem verileriniz arşive gönderildi dedikten sonra userformdan çıkabilirmi Hayırı seçersem işlem yapılmadı deyip formdan çıkabilirmi.?.Birde hiç veri yokken eveti seçtiğim zaman hata veriyo.Bunuda bu şekilde düzenlerseniz memnun olurum.saygılar
 

Ekli dosyalar

Ekli dosyayı işinizi görürümü?.:cool:
listboxa çift tıkalyın.
Kod:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim sat As Long
'coder:evrengizlen@hotmail.com
'date: 24.04.2011
If MsgBox("Seçili satırı Silmek İstiyormusunuz?", vbYesNo, "S İ L M E") = vbNo Then
    Unload Me
    MsgBox "Silme işlemi iptal edildi.", vbCritical, "U Y A R I"
    Exit Sub
End If
sat = Sheets("gönderilenyer").Cells(65536, "B").End(xlUp).Row + 1
If sat >= 65534 Then
    Unload Me
    MsgBox "gönderilenyer adlı sayfada sayfa doldu!" & vbLf & "Seçilen kayıt aktarılmadı!", vbCritical, "U Y A R I"
    Exit Sub
End If

Sheets("kayıt").Range("A" & ListBox1.ListIndex + 2 & ":I" & ListBox1.ListIndex + 2).Copy _
Sheets("gönderilenyer").Range("A" & sat)
 
Sheets("gönderilenyer").Range("J" & sat).Value = Date
Sheets("gönderilenyer").Range("J" & sat).NumberFormat = "dd.mm.yyyy"

Application.CutCopyMode = False
sat = ListBox1.ListIndex + 2
ListBox1.RowSource = ""
Sheets("kayıt").Range("A" & sat & ":I" & sat).Delete (xlUp)
'Call lstbx_list
Unload Me
MsgBox "Veriniz başarı ile gönderilenyer sayfasına kopyalanmıştır." & _
vbLf & "evrengizlen@hotmail.com" & vbLf & "24.04.2011", vbOKOnly + vbInformation

End Sub

Private Sub UserForm_Initialize()
Me.Caption = "evrengizlen@hotmail.com        " & Format(Now, "dd mmmm yyyy  dddd  hh:mm")
Call lstbx_list
End Sub
Private Sub lstbx_list()
Dim sat As Long
sat = Sheets("kayıt").Cells(65536, "B").End(xlUp).Row
If sat > 1 Then ListBox1.RowSource = "kayıt!A2:I" & sat
End Sub
 

Ekli dosyalar

Ya hocam size biraz fazla yük oldum ama .Özür dileyerek 13 nolu mesajıma bir bakabilirmisiniz.Onda bir güzelleştirme yapabilirseniz.örneğin yapmış olduğunuz saat tarih gibi
 
Siz işi yokuşa ürüyorsunuz.
aslında benim ilk yaptığımdan son yaptğıma kadar bölümde kullanım zorlaşıyor.
Bir işleme ulaşmak için kaç eylem yapmak gerekiyor.
ben size onu anlatmak istedim.
yoksa en kral kodu yazarım.önemli değil.
Dosyanız ektedir.:cool:
 

Ekli dosyalar

Sayın Hocam Muhteşemsiniz.Allah sizden razı olsun çok uğraştırdım sizi hakkınızı helal edin
 
Hocam sizden birşey öğrenmek istiyorum ben yine userforma ekleme yapmak istediğimde örneğin tc kimlik no bunu nasıl usarforma bağlayacağım
 
Hocam sizden birşey öğrenmek istiyorum ben yine userforma ekleme yapmak istediğimde örneğin tc kimlik no bunu nasıl usarforma bağlayacağım
Anladım.
Ama başka arkadaşlarlada ilgilenmek lazım değilmi?
Birazda yoruldum tabiiki.
Siz araştırın konuyu çözemezseniz,bakarım bir ara.
Not:koyduğum tetxboxları kullanarak yeni veri girebilirsiniz.
no girmek içinde bir tane daha textbox ekleyin.
Yalnız textboxların locked özelliği true yaptım
Yani kilitli.
Onları false yapın önce.O zaman veride girebilirsiniz
Bir kaydet butonu koyun ve veri girişi yapın.
tabii forumda araştırın önce.
Böyle armut piş ağzıma düş oluyor.
hayır buda olurda siz ben öğrenmek istiyorum diyorsanız diye dedim.
İstemiyorsanız bu şekilde buradaki arkadaşalara parça parça yaptırıp alıp dosyanızı gidersiniz elbet.Ona diyecek bir şeyim yok.
ama öğrenmek niyetiniz varsa araştırıp uygulama yapmalısınız.
en iyi öğrenme metodu deneme yanılma metodur.
ben öyle öğrendim mesela.
O zaman unutmuyorsunuz kodlamayı.
Ama bu şekleide bütün program yaptırırsanız ilerleme sağlayanmazsınız.
öğrenmek için araştırmak ve denemeler yapmak ,emek sarfetmek lazım değilmi?
Kafanızı şişirdim . :D Kusura bakmayın.
Kolay gelsin.:cool:
 
Sayın Evren Hocam tc numarasını userforma ekledim fakat bir türlü getiremedim.Verinin oraya nasıl getirildiğini anlatırsanız öğrenmiş olurum.ve Diğerlerinide uygulamaya çalışırım
 

Ekli dosyalar

Geri
Üst