Dosya adını belirli bir hücreden alarak Farklı Kaydet ve Kapat butonu için bir makro

Katılım
29 Kasım 2013
Mesajlar
11
Excel Vers. ve Dili
2007
2010
Merhaba;

Sub Dugme_Tıklat()
ActiveWorkbook.SaveAs Filename:="C:\Users\ali\Desktop\yedek\" & Cells(3, 4).Value & ".xlsm"
Application.Quit
End Sub

Makrosundaki problem nedir? VBA modülüne ilk yazdığımda çalışıyor. İkinci kez kullanmaya çalıştığımda hata veriyor.
{Run-time error '1004': Method 'SaveAs' of object!_Workbook' failed}

Application.Quit yerine ActiveWorkbook.close kullanıldığında da aynı hata söz konusu.

Bu makro ile; mevcut excel dosyasını, ismini belirli bir hücreden (hücre içeriği tarihe göre değişiyor) alarak farklı kaydetmeyi umuyorum. (Bir tür, tarih etiketine sahip yedekleme gibi). Bu makro ile; düğmeye basıldığında, önce dosyanın ismini D4 hücresinden alacak ve bu isim ile kaydedecek ve hemen arkasından excel' i kapatacak.

Teşekkürler.
 

hımmmmmmmm

Destek Ekibi
Destek Ekibi
Katılım
10 Temmuz 2011
Mesajlar
599
Excel Vers. ve Dili
2000-2007-2010-2016
Merhaba;

Sub Dugme_Tıklat()
ActiveWorkbook.SaveAs Filename:="C:\Users\ali\Desktop\yedek\" & Cells(3, 4).Value & ".xlsm"
Application.Quit
End Sub

Makrosundaki problem nedir? VBA modülüne ilk yazdığımda çalışıyor. İkinci kez kullanmaya çalıştığımda hata veriyor.
{Run-time error '1004': Method 'SaveAs' of object!_Workbook' failed}

Application.Quit yerine ActiveWorkbook.close kullanıldığında da aynı hata söz konusu.

Bu makro ile; mevcut excel dosyasını, ismini belirli bir hücreden (hücre içeriği tarihe göre değişiyor) alarak farklı kaydetmeyi umuyorum. (Bir tür, tarih etiketine sahip yedekleme gibi). Bu makro ile; düğmeye basıldığında, önce dosyanın ismini D4 hücresinden alacak ve bu isim ile kaydedecek ve hemen arkasından excel' i kapatacak.

Teşekkürler.

Cells(3, 4).value ; kotu d3 hücresine tekabül eder.. dosya ismini d3 de bulamayınca bu hatayı veriyor...
 
Katılım
29 Kasım 2013
Mesajlar
11
Excel Vers. ve Dili
2007
2010
Cells(3, 4).value ; kotu d3 hücresine tekabül eder.. dosya ismini d3 de bulamayınca bu hatayı veriyor...
Teşekkür ederim hımmmmmmmm Hocam. Zahmet verdim. Çok Sağolun.
Sorumu acele ile yazdığımdan, D3 yerine D4 hücresi şeklinde belirtmişim. Benim hatamdır. Özür dilerim.
Problemi çözdüm. (İsim almak üzere başvurduğu D3 hücresini silen bir başka makro ile çakışmış. İlk kez yazıldığında çalışıp, sonrasında çalışmama nedeni bu imiş.)
Yine de bir şey sormak isterim. Bu kod üzerinde nasıl bir değişiklik yapmalıyız ki, halihazırda butonun {Sub Dugme_Tıklat() butonu} bulunduğu Sayfa 1' in D3 'ünden değil de; mesela, aynı excelde oluşturulmuş DATA isimli bir başka sayfanın D3 ' ünden alsın?
Teşekkürler.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,329
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

Kod:
Sub Dugme_Tıklat()
ActiveWorkbook.SaveAs Filename:="C:\Users\ali\Desktop\yedek\" & Sheets("DATA").Range("D3").Value & ".xlsm"
Application.Quit
End Sub
 

hımmmmmmmm

Destek Ekibi
Destek Ekibi
Katılım
10 Temmuz 2011
Mesajlar
599
Excel Vers. ve Dili
2000-2007-2010-2016
korhan hoca cevabı vermiş...
Sheets("[DATA") kısmında, çift tırnak içindeki köşeli parantezi kaldır... seni şaşırtmasın
 
Katılım
29 Kasım 2013
Mesajlar
11
Excel Vers. ve Dili
2007
2010
Korhan Ayhan ve hımmmmmmmm hoclara teşekkür ederim. Verdikleri bilgiler kusursuz işliyor. [Minik ipucu için de ayrıca teşekkürler.
 
Katılım
21 Aralık 2011
Mesajlar
5
Excel Vers. ve Dili
2013 - TR
Merhabalar;

Sub Bitis_Buton()
ActiveWorkbook.SaveAs Filename:="C:\Users\Furkan\Desktop\" & Sheets("Bitis_Bilgisi").Range("A2").Value & ".xlsm"
End Sub

kod çok işime yaradı ellerinize sağlık fakat çalıştığım book 'da 5 sheets var. Kodu çalıştırıp farklı kaydettiği zaman, kaydedilen excel 5 sheets ile kaydetmekte. İçinden sadece "Bitis_Bilgisi" isimli sheet 'i kaydetmesini istemekteyim. Bir de "A2"+"L2" olarak isimlendirme yapabilir miyim? Konu hakkında yardımlarınızı rica ederim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,329
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

C++:
Option Explicit

Sub Sayfayi_Excel_Dosyasi_Olarak_Kaydet()
    Sheets("Bitis_Bilgisi").Copy
    ActiveWorkbook.SaveAs Filename:="C:\Users\Furkan\Desktop\" & _
                          Sheets("Bitis_Bilgisi").Range("A2").Value & " " & _
                          Sheets("Bitis_Bilgisi").Range("L2").Value & ".xlsm", FileFormat:=52
    ActiveWindow.Close
End Sub
 
Katılım
21 Aralık 2011
Mesajlar
5
Excel Vers. ve Dili
2013 - TR
Korhan Hocam çok teşekkür ederim ellerinize sağlık. Sizi de işiniz gücünüz arasında böyle yormak istemem ama sizler kadar donanımlı ve bilgili değilim. Allah razı olsun.
Bir kaç desteğe daha ihtiyacım olacak eğer mümkün ise;


üzerinde çalıştığım excel. Dosya üzerinden daha iyi anlatabilirim sanırım.

1 - a) Hocam sizin yardımcı olduğunuz kod ile işlemi yaptım bitiş bilgisini gayet güzel farklı kaydet yaptı. Fakat farklı kaydedilen excel kayıt türü makro içerebilen excel çalışma kitabı yerine excel çalışma kitabı olarak kaydedilebilir mi?
2 - b) Farklı kaydettiğimiz excel çalışma kitabında farklı kaydet butonunu ve "L2" 'deki bitiş bilgisi yazısını kaldırabilir miyiz?

2 - Kantar ve Damages sekmelerinin PDF Olarak Kaydet butonu gibi altına bir botun daha eklesek ".JPG" olarak da kaydedebilir miyiz?
 
Üst