• DİKKAT

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

Formüllü bir kitaptan başka bir kitaba değerleri yapıştır ile veri aktarma

Katılım
18 Ekim 2008
Mesajlar
46
Excel Vers. ve Dili
Excel 2007 - Tr
Excel 2013 - Tr
Merhabalar. Alında yaptığım arama sonucunda http://www.excel.web.tr/f14/formulu-deoere-cevirme-t102618.html adresindeki konu ile ilgili diye o konu altında yazmıştım aynı soruyu ama arada kaynadı sanki, o nedenle yeni konu açmayı uygun gördüm.

Biz proje değerlendirme işlemi yapıyoruz. Benim elimde değerlendirme için hazırlanmış formüllü bir excel kitabı var (1100-formul.xls). Ayrıca işyerinde network üzerinden açtığımız her projeye özel boş 1100.xls var (Bu boş 1100.xls'leri bilgisayarımıza kaydedemiyoruz,network üzerinden açıp direk networke kaydediyoruz).

1100-formul.xls'de 3 tane sayfa var: ""VeriGiris","Sonuc1","Sonuc2"
1100.xls'de 2 sayfa var: "Sonuc1","Sonuc2"

"1100-formul.xls" ile "1100.xls" de ortak olarak yer alan Sonuc1 ve Sonuc2 sayfalarının formatları birebir aynı. Tek fark bir tanesinde tablolarda formül var, diğerinde yok.

Soruma gelince;
Ben "1100-formul.xls" dosyasının sadece "Sonuc1" ve "Sonuc2" sayfalarında yer alan tabloları (ya da sayfa içeriğinin tamamını) makro ile network üzerinden açmış olduğumuz 1100.xls kitabındaki aynı tablolara değerleri yapıştır şeklinde (yani formülsüz olarak) aktarabilirmiyiz. (1100.xls bilgisayarda açık olacak ama bilgisayara kayıtlı değil).

Problem yaşadığım tüm kritik konulara burada çözüm buldum, umarım bu konunun da bir çözüm yolu vardır. Şimdiden teşekkürler.
 

Ekli dosyalar

Her iki dosyanında bilgisayarınızda açık olduğunu kabul ederek, makro kaydet yöntemi ile elde ettiğim aşağıdaki kodlar sanırım isteğinizi karşılayacaktır. Makroyu "1100-formul.xls" dosyası içinde bir butona bağlayarak çalıştırın.

Kod:
Sub kopyala()
Application.ScreenUpdating = False
    Sheets("Sonuc1").Range("I7:AH9").Copy
    Workbooks("1100.xls").Sheets("Sonuc1").Range("I7").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
 
    Sheets("Sonuc1").Range("I17:AH20").Copy
    Workbooks("1100.xls").Sheets("Sonuc1").Range("I17").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
 
    Sheets("Sonuc2").Range("N3:P6").Copy
    Workbooks("1100.xls").Sheets("Sonuc2").Range("N3").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
 
    Application.CutCopyMode = False
End Sub
 
Levent Bey çok teşekkür ederim. Evet dosyaların ikisi de aynı anda açık olacak. Dosyaların her ikisi de açık olduğu sürece hangi klasörde/konumda olduklarının bir ehemmiyeti yok değilmi? Bahsettiğim üzere bilgilerin yapıştırılacağı dosya network üzerinden açılacak. o şekilde bir testi şu an yapamıyorum ama sanırım sorun çıkmayacak.

Aslında orjinal dokümanım için birçok kez makro kaydet kullandım ancak bu sefer aklımın ucundan bile geçmedi. Kodlar yaptığım denemelere göre sorunsuz çalışıyor. Çok sağolun.
 
Levent Bey, veya varsa yardımcı olabilecek diğer arkadaşlar.

Yukarıda verilmiş olan kod mükemmel şekilde işimi gördü. Tabi bu örnekte sadece 3 tane tablo vardı, benim orjinal dokümanımda yüzlerce kopyala-yapıştır işlemi var, o nedenle oldukça uzun bir kod oldu.

Sorum şu;
butona tıkladığımızda önce bir uyarı penceresi açılsa "Kopyalama İşlemi Yapılıyor" şeklinde ve kopyalama işlemi sonuna kadar ekranda kalsa. Kopyalama işlemi sonunda ise "İşlem Tamamlandı" şeklinde pencere açılıp 2 saniye sonra kendiliğinden kapansa.

Eğer bu mümkünse hem bu kopyala yapıştır işlemim için oluşturulan makroya, hemde farklı işlemler için hazırlanmış zaman alan makrolara bunu yerleştirmek istiyorum.

Yardımınız için teşekkürler.
 
Levent Bey, veya varsa yardımcı olabilecek diğer arkadaşlar.

Yukarıda verilmiş olan kod mükemmel şekilde işimi gördü. Tabi bu örnekte sadece 3 tane tablo vardı, benim orjinal dokümanımda yüzlerce kopyala-yapıştır işlemi var, o nedenle oldukça uzun bir kod oldu.

Sorum şu;
butona tıkladığımızda önce bir uyarı penceresi açılsa "Kopyalama İşlemi Yapılıyor" şeklinde ve kopyalama işlemi sonuna kadar ekranda kalsa. Kopyalama işlemi sonunda ise "İşlem Tamamlandı" şeklinde pencere açılıp 2 saniye sonra kendiliğinden kapansa.

Eğer bu mümkünse hem bu kopyala yapıştır işlemim için oluşturulan makroya, hemde farklı işlemler için hazırlanmış zaman alan makrolara bunu yerleştirmek istiyorum.

Yardımınız için teşekkürler.

Bu konuda yardımcı olabilecek yok mu acaba arkadaşlar? Sanırım makrolar ile ilgili olduğu için Makro-VBA bölümüne yazmak gerekiyordu ama buraya yazmış bulundum bikere :)

Aslında son sorduğum konuyla ilgili olarak tam olmasda benzer bir örnek burada var; http://www.excel.web.tr/f48/i-lemler-devam-ederken-ekrana-bilgi-gelmesi-t39505.html
ancak zaman geçmesi yüzünden örnek dosya siliniş, faydalanamadım.
 
Her iki dosyanında bilgisayarınızda açık olduğunu kabul ederek, makro kaydet yöntemi ile elde ettiğim aşağıdaki kodlar sanırım isteğinizi karşılayacaktır. Makroyu "1100-formul.xls" dosyası içinde bir butona bağlayarak çalıştırın.

Kod:
Sub kopyala()
Application.ScreenUpdating = False
    Sheets("Sonuc1").Range("I7:AH9").Copy
    Workbooks("1100.xls").Sheets("Sonuc1").Range("I7").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
 
    Sheets("Sonuc1").Range("I17:AH20").Copy
    Workbooks("1100.xls").Sheets("Sonuc1").Range("I17").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
 
    Sheets("Sonuc2").Range("N3:P6").Copy
    Workbooks("1100.xls").Sheets("Sonuc2").Range("N3").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
 
    Application.CutCopyMode = False
End Sub

Bu makroyu kullanarak bir veri aktarma yapmak istedim gerekli alanları kendime göre düzenledim ancak benim kullanmış olduğum çalışma sayfasında hücre birleştirmeler mevcut olduğundan dolayı "Bu işlem için birleştirilen hücrelerin aynı boyutta olması gerekli" uyarısı alıyorum. Ben değerleri ve biçimleri aynı anda kopyalayarak diğer dosyaya aktarmak istiyorum. Bu konuda yardımcı olur musunuz rica etsem?
 
İstediğimi buldum ancak ufak bi sorum daha olacak. Bu veri aktarma işleminden önce kopyalanacak olan excel dosyasındaki sayfanın içeriğini tamamen temizlemesini istiyorum. yani yeni bir çalışma sayfası açmış gibi olması için ne tür bir kod kullanmak gerekir. Rica etsem yardımcı olabilir misiniz?
 
Geri
Üst