Sadece Belirtilen Sayfadaki Verileri Kaydetme

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
731
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Merhaba arkadaşlar.

Sayfa kaydetme ile ilgili bi ara görmüştüm ama uzun süre aradım bulamadım. Döngü ile bütün excel sayfalarını kaydediyordu. Onu kendime uyarlayacaktım. Aşağıdaki gibi sadece belirtilen sayfayı kaydedebilir miyiz.

Mesela üp sayfası a1 hücresine veri girdik veriyi sayfaya yazdırdıktan sonra sadece ilgili sayfayı kaydedebilir miyiz. Bazen Excel kilitleniyor bazen de elektrikler gidiyor daha önce girilen veriler siliniyor.

sheets("üp").range("a1").value="Veri"
Sheets("üp").Save

Excel'i kapatırken de Kaydedilsin mi sorgusunu yapmayacak.

Yardımcı olursanız sevinirim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,246
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Excelde sayfa kaydetme olayı yoktur. Dosyayı kayıt edebilirsiniz. Eğer her değişiklikte bu işlemi yapmayı düşünüyorsanız çok kullanışlı olmayacaktır. Çünkü excel dosyayı kayıt ederken belli bir zaman kullanıyor. Bu zaman dosyanın hacmine göre değişkenlik göstermektedir.

Dilerseniz excelin özellikler bölümünden otomatik kaydet ayarları bulunuyor. Orada ki süreyi 1 dakikaya kadar düşürebiliyorsunuz. Bu özelliği kullanmanızı tavsiye ederim.

Makro ile yapmak istiyorum derseniz aşağıdaki kodları deneyebilirsiniz.

İlk alternatif;

Bu kod dosyada sayfa farketmeksizin her hücre değişikliğinde dosyayı kaydetmeye çalışır.

BuÇalışmaKitabı (ThisWorkbook) bölümüne uygulayınız.

C++:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    ThisWorkbook.Save
End Sub
İkinci alternatif;

Bu kod ile bazı sayfalarda dosya kaydetme işlemini yapabilirsiniz. Mesela Sayfa1 isimli sayfanın kod bölümüne uygularsanız orada yapacağınız her değişiklikte dosyayı kaydetmeye çalışır.

C++:
Private Sub Worksheet_Change(ByVal Target As Range)
    ThisWorkbook.Save
End Sub
 

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
731
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Excelde sayfa kaydetme olayı yoktur. Dosyayı kayıt edebilirsiniz. Eğer her değişiklikte bu işlemi yapmayı düşünüyorsanız çok kullanışlı olmayacaktır. Çünkü excel dosyayı kayıt ederken belli bir zaman kullanıyor. Bu zaman dosyanın hacmine göre değişkenlik göstermektedir.

Dilerseniz excelin özellikler bölümünden otomatik kaydet ayarları bulunuyor. Orada ki süreyi 1 dakikaya kadar düşürebiliyorsunuz. Bu özelliği kullanmanızı tavsiye ederim.

Makro ile yapmak istiyorum derseniz aşağıdaki kodları deneyebilirsiniz.

İlk alternatif;

Bu kod dosyada sayfa farketmeksizin her hücre değişikliğinde dosyayı kaydetmeye çalışır.

BuÇalışmaKitabı (ThisWorkbook) bölümüne uygulayınız.

C++:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    ThisWorkbook.Save
End Sub
İkinci alternatif;

Bu kod ile bazı sayfalarda dosya kaydetme işlemini yapabilirsiniz. Mesela Sayfa1 isimli sayfanın kod bölümüne uygularsanız orada yapacağınız her değişiklikte dosyayı kaydetmeye çalışır.

C++:
Private Sub Worksheet_Change(ByVal Target As Range)
    ThisWorkbook.Save
End Sub
Excelde sayfa kaydetme olayı yoktur. Dosyayı kayıt edebilirsiniz. Eğer her değişiklikte bu işlemi yapmayı düşünüyorsanız çok kullanışlı olmayacaktır. Çünkü excel dosyayı kayıt ederken belli bir zaman kullanıyor. Bu zaman dosyanın hacmine göre değişkenlik göstermektedir.

Dilerseniz excelin özellikler bölümünden otomatik kaydet ayarları bulunuyor. Orada ki süreyi 1 dakikaya kadar düşürebiliyorsunuz. Bu özelliği kullanmanızı tavsiye ederim.

Makro ile yapmak istiyorum derseniz aşağıdaki kodları deneyebilirsiniz.

İlk alternatif;

Bu kod dosyada sayfa farketmeksizin her hücre değişikliğinde dosyayı kaydetmeye çalışır.

BuÇalışmaKitabı (ThisWorkbook) bölümüne uygulayınız.

C++:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    ThisWorkbook.Save
End Sub
İkinci alternatif;

Bu kod ile bazı sayfalarda dosya kaydetme işlemini yapabilirsiniz. Mesela Sayfa1 isimli sayfanın kod bölümüne uygularsanız orada yapacağınız her değişiklikte dosyayı kaydetmeye çalışır.

C++:
Private Sub Worksheet_Change(ByVal Target As Range)
    ThisWorkbook.Save
End Sub
Teşekkürler Korhan bey otomatik kaydet daha mantıklı geldi. Bazı sayfalara girilen verileri kaydetme kodlarının sonunda ThisWorkbook.Save kodu var her bir veri girişinde kaydetme işlemi yaptığından, zaman alıyodu. Konuyu da o yüzden açtım zaten sadece işlem yaptığımız sayfadaki bilgileri kaydeden nir makro var mı diye.
 
Üst