Makrolu kitaptan diğer çalışma kitabına kopyalama yapıştırmada problem

Katılım
20 Şubat 2006
Mesajlar
259
Saygıdeğer arkadaşlar;
İki Dosya arasında veri kopyalama ve yapıştırma yapmak istiyorum.
Lakin 1. çalışma kitabındaki “Thisworkbook” adlı kısımda

Private Sub Workbook_WindowActivate(ByVal Wn As Window)
On Error Resume Next
Module2.Auto_Open
UserForm1.Show
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
On Error Resume Next
Module2.Auto_Close
UserForm1.Hide
End Sub

Komutları var. Bu modüllerin amacı çalışma sayfası pasifken tüm extra menüleri ve userformları, cut-copy yasaklarını kapatmak.


Benim ise 1. kitaptan diğer çalışma kitabına aktarmada kullandığım komut ise aşağıdaki gibi. Problem ise : 1. çalışma kitabından verileri kopyaladıktan sonra ikinci çalışma kitabını verileri yapıştırmak açtığımda, 1. çalışma kitabının içindeki “auto_close” modülü çalışıyor ve bu yüzden hafızadaki kopyalanmış veriyi temizliyor. (Yani kopyaladan sonra araya Thisworkbook taki auto close modülü girdiği için kopyalama işlemi iptal oluyor. ) O yüzden de boş veriyi ikinci çalışma sayfasına yapıştırıyor. Yada “paste” komutunun sıralama hatası uyarısı veriyor. Thisworkbook taki bu komutları kaldırınca normale dönüyor ama bu komutlar bana kitap1 haricinde açacağım yeni dosyaları kullanmada her şeyin normale dönmesi için kolaylık sağlıyor..

1. Sizce Arkadaşlar; bu problemi aşmak için ne gibi yöntem uygulanabilir?
2. Thisworkbook daki bu iki komut bir sürelik veri aktarana kadar durdurulabilinir mi?
3. Saygılarımla….. Yardımınız için şimdiden teşekkürler…


Private Sub CommandButton52_Click()
Windows("kitap1.xls").Activate
Sheets("denemeaktar").Select
[5:5].AutoFilter
[5:5].AutoFilter
Unload Me
On Error GoTo 10
Windows("kitap2.xls").Activate
Exit Sub
10 Workbooks.Open Filename:=ActiveWorkbook.Path & "\kitap2.xls"

Windows("kitap1.xls").Activate
Sheets("denemeaktar").Select

Range("A6:I1000").Select
Selection.Copy

Windows("kitap2.xls").Activate
Sheets("aktarılacakyer").Select
Range("A5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
 
Katılım
20 Şubat 2006
Mesajlar
259
Saygıdeğer Arkadaşlar;
olayı size biraz detaylı anlattım galiba, o yüzden pek cevap yok.

Kısacası makrolu bir çalışma kitabından makrosuz bir çalışma kitabına copy paste yapmak istiyorum ama, 1. kitabın içinde otomatik çalışan

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
On Error Resume Next
Module2.Auto_Close
UserForm1.Hide
End Sub

bu kod yüzünden copy olayı başarısız oluyor.
Sizden ricam, bu copy paste olayı başlayıp bitene kadar en azından 30 sn geçiyor. bu süre zarfında bu kod inaktif olamaz mı?

Teşekkürler...
 
Katılım
20 Eylül 2005
Mesajlar
216
Excel Vers. ve Dili
Excel 2003 Türkçe
Ben bu sorunu, Makroları devre dışı bırakarak yada Denetim araç çubuğunu tasarım durumuna getirerek çözüyorum.
 
Katılım
20 Şubat 2006
Mesajlar
259
Saygıdeğer arkadaşlar;

Gene vefalı sitemizden bulduğum ve deneme yoluyla çözdüğüm aşağıdaki kodla sorunumu hallettim.

If Application.CutCopyMode = xlCopy Then Exit Sub
Module2.Auto_Close
UserForm1.Hide


yani başka çalışma kitabına ya da başka çalışma kitabından 1. kitabımıza veri kopyalamak istediğimizde modulleri iptal ediyor.

mükemmel bu excel ya..

Hepinize ilginizden dolayı teşekkürler. Bu aralar adminlerimiz ve modlarımız yoğun anlaşılan. onlara kolay gelsin diyorum....
 
Katılım
20 Eylül 2005
Mesajlar
216
Excel Vers. ve Dili
Excel 2003 Türkçe
Akıl akıldan üstündür. Ne güzel bir çözüm. Bir çok dosyama ekleyeceğim.
 
Üst