• DİKKAT

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

Kapalı dosya ya bilgi yazma

  • Konbuyu başlatan Konbuyu başlatan tunc06
  • Başlangıç tarihi Başlangıç tarihi
Katılım
8 Mart 2012
Mesajlar
1
Excel Vers. ve Dili
Excel 2003
Merhabalar;

Çalışılan a.xls dosyasının A sayfasının "A1,AA100" aralığı , aynı klasörde bulunan b.xls dosyasının B sayfasına "A1,AA100" aralığına kopyalanacak.

B sayfası açık olduğu zaman problem yok. Bu işlem yapılıyor. Fakat B dosyasının açık olmadığı zaman da makro hata veriyor.

İlginiz için Teşekkürler.
 
Merhaba,

Bu şekilde deneyin.

Kod:
Sub VeriKopyala()
 
    Application.ScreenUpdating = False
 
    Workbooks.Open (ThisWorkbook.Path & "/b.xls")
    Range("A1:AA100").ClearContents
 
    Workbooks("a.xls").Sheets("Sayfa1").Range("A1:AA100").Copy Range("A1")
 
    ActiveWorkbook.Save
    ActiveWorkbook.Close
 
End Sub
.
 
Ben de forumda bu konuyu arıyordum, forumda benzer uygulamalar vardı, ama benim aradığım tam da buydu... Teşekkürler.
 
b dosyası kapalıda olsa a dosyası içinde bir değişiklik yaptığımızda ancak makroyu çalıştırarark b dosyası içine kayıt yapıyor. Burada a dosyası içinde veri girildiği anda makro otomatik olarak tetiklense ve b dosyası içinde kayıt yapabilirmi?
Teşekkürler.
 
Merhaba,

Bu şekilde deneyin.

Kod:
Sub VeriKopyala()
 
    Application.ScreenUpdating = False
 
    Workbooks.Open (ThisWorkbook.Path & "/b.xls")
    Range("A1:AA100").ClearContents
 
    Workbooks("a.xls").Sheets("Sayfa1").Range("A1:AA100").Copy Range("A1")
 
    ActiveWorkbook.Save
    ActiveWorkbook.Close
 
End Sub
.
Bu makro kodu benim çalışmama uymadığından
data sheetindeki verilerin kapalı.xls dosyasına A3-5000 ,B 3- 5000,C3-5000,D3-5000,E3-5000,F3-5000,G3-5000,H3-5000,I 35000 aralıklarının kopyalama nasıl olabilir.
 

Ekli dosyalar

Arkadaşlar bu konu başlığı altında yine sormuştum. Verdiğiniz kod çalışıyor fakat a dosyası içinde ancak makro çalıştır yaptığımız vakit b kapalı dosyasına veri aktarabiliyoruz. a dosyası içinde makro çalıştırı çalıştırmadan a dosyası içinde veriler değiştiği zaman b dosyasında bu verileri görebilirmiyiz.
Teşekkürler
 
b dosyası kapalıda olsa a dosyası içinde bir değişiklik yaptığımızda ancak makroyu çalıştırarark b dosyası içine kayıt yapıyor. Burada a dosyası içinde veri girildiği anda makro otomatik olarak tetiklense ve b dosyası içinde kayıt yapabilirmi?
Teşekkürler.

Yapılabilir, biraz daha açarsanız sevinirim. Örneğin hangi aralığa veri girişinde kod tetiklenecek?
 
Bu makro kodu benim çalışmama uymadığından
data sheetindeki verilerin kapalı.xls dosyasına A3-5000 ,B 3- 5000,C3-5000,D3-5000,E3-5000,F3-5000,G3-5000,H3-5000,I 35000 aralıklarının kopyalama nasıl olabilir.

Bu şekilde deneyin.

Kod:
Sub VeriKopyala()
 
    Application.ScreenUpdating = False
 
    Workbooks.Open (ThisWorkbook.Path & "/kapalı.xlsx")
    Range("A3:H500").ClearContents
 
    Workbooks("SPOR CEZA KAYIT-VERSİYON 2013-eskiyedonduk.xls").Sheets("data").Range("A4:H500").Copy Range("A3")
 
    ActiveWorkbook.Save
    ActiveWorkbook.Close
 
End Sub

.
 
a açık dosyasındaki d:10 ve d:11 hücrelerine girilen veriler (makro çalıştıra basmadan), b kapalı dosyasında a1 ve a2 sütunlarında kopyalanacak.
 
Son düzenleme:
Yukarıda verilen kod makro çalıştıra basarak işliyor.
Ekte verdiğim dosyalarda
a1 (açık) dosyasındaki d10 ve d11 hücresindeki veriler, makro çalıştıra basmadan ve d10 ve d11 hücresindeki her değişimde; b1(kapalı) dosyasındaki a1 ve a2 hücrelerine kopyalanabilirmi?

Teşekkürler.
 

Ekli dosyalar

a açık dosyasındaki d:10 ve d:11 hücrelerine girilen veriler (makro çalıştıra basmadan), b kapalı dosyasında a1 ve a2 sütunlarında kopyalanacak.


a1 dosyasında Module kopyalayın.

Kod:
Sub VeriKopyala()
 
    Application.ScreenUpdating = False
 
    Workbooks.Open (ThisWorkbook.Path & "/b1.xlsx")
    Range("A1:A2").ClearContents
    Workbooks("a1.xlsm").Sheets("Sayfa1").Range("D10:D11").Copy Range("A1")
 
    ActiveWorkbook.Save
    ActiveWorkbook.Close
 
End Sub

a1 dosyasında Sayfa1'in kod bölümüne kopyalayın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
 
    If Intersect(Target, [D10:D11]) Is Nothing Then Exit Sub
 
    VeriKopyala
 
End Sub

.
 
Ömer bey benim için büyük adamsın. Çok teşekkür ederim...
 
Geri
Üst