• DİKKAT

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

Hücre Adıyla Farklı Kaydeden Makro

  • Konbuyu başlatan Konbuyu başlatan Barfly
  • Başlangıç tarihi Başlangıç tarihi
Katılım
29 Eylül 2007
Mesajlar
136
Excel Vers. ve Dili
Microsoft Office Professional Plus 2026 - Türkçe
Herkese Selam,

Halit Hocamın vermiş olduğu kodla abc.xls dosyasını C4 hücresindeki değer adıyla farklı bir şekilde kaydedebiliyorum. Sıkıntıma gelince abc.xls dosyası bir taslak dosyası ve içerisine veriler giriliyor, farklı kaydediliyor ve verilerin bulunduğu yeni bir dosya oluşuyor. Aşağıdaki kodla abc.xls dosyasını kapatıp tekrar açtığımda abc içindeki verilerinde aynen kaydedildiğini görüyorum. Yani ben yeni dosyayı kaydet dediğimde taslak dosyayıda o haliyle aynen kaydediyor. Bunu engellemem mümkün müdür acaba.Yardımlarınızı rica ederim.

Sub kayıtet()
ActiveWorkbook.Save
yer = ThisWorkbook.Path & "\" & Cells(16, "AI").Value & ".xlsm"
Dim DosyaSistemi
Set DosyaSistemi = CreateObject("Scripting.FileSystemObject")
Dim ds, a
Set ds = CreateObject("Scripting.FileSystemObject")
a = ds.FileExists(yer)
If a = True Then
MsgBox "Bu isimde bir dosya var"
Else
DosyaSistemi.CopyFile ThisWorkbook.FullName, yer
End If
End Sub


Saygılarımla,
 
Merhabalar;

.xlt uzantılı bir şablondan bu kodla dosya üretip aynı klasöre atmayı deniyorum ve...

DosyaSistemi.CopyFile ThisWorkbook.FullName, yer

yukardaki satırda File Not Found şeklinde hata veriyor ne yapabilirim?
 
Merhabalar;

.xlt uzantılı bir şablondan bu kodla dosya üretip aynı klasöre atmayı deniyorum ve...



yukardaki satırda File Not Found şeklinde hata veriyor ne yapabilirim?

yapıyor bu kodu denermisiniz A1 hücresine dosya adını yazınız.

Kod:
Sub kayıtet()
yer = ThisWorkbook.Path & "\" & Cells(1, "A").Value & ".xlt"
Dim DosyaSistemi
Set DosyaSistemi = CreateObject("Scripting.FileSystemObject")
Dim ds, a
Set ds = CreateObject("Scripting.FileSystemObject")
a = ds.FileExists(yer)
If a = True Then
MsgBox "Bu isimde bir dosya var"
Else
DosyaSistemi.CopyFile ThisWorkbook.FullName, yer
End If
End Sub
 
Halit Hocam bu kodlarla da aynı yerde hata verdi.Klasör içinde kodların uygulandığı örnek bir şablon yüklüyorum.Umarım ilgilenebilirsiniz.
 

Ekli dosyalar

yani xlt uzantılı dosyayı xls olarakmı değiştirmek istiyorsun
 
Hocam dosyada excelin kendi kaydet butonuna bastığınızda Farklı Kaydet penceresi açılıyor ve kendisi sablon1.xls adında bir dosya üretiyor ve ben o dosyayı adını değiştirip istediğim bir dizine kaydediyorum.

İstediğim bu son basamakları bir butonla yapmak Farklı Kaydet penceresini açmadan A1 hücresi.xls şeklinde bir dosyayı şablonumun bulunduğu klasöre kaydetmek ve açık olan tüm excel uygulamalarını kapatmak..
 
http://www.excel.web.tr/showthread.php?t=58047

yukarıdaki linkdeki dosyada
Dosyaadıdegistir sayfasında
bulunan komut düğmesine tıkla işlem türünü seç
aranan uzantıyı açılan liste kutusundan seç
veridosyaların klasörünü bul düğmesinden veri alınacal dosyanın klasörünü seç
ve liste kutusundan işaretle
değiştirilecek uzantıyı listeden seç veya elel yaz açılan liste kutusuna
kayıt yapılacak yeni dosyaların klasörünü bul komut düğmesinden seç
işlemleri yap komut düğmesine tıkla
 
Hocam Nod32 linkteki dosyada bilinmeyen macro virus şeklinde virüs tespit ediyor malesef açamadım:(
 
Hocam Nod32 linkteki dosyada bilinmeyen macro virus şeklinde virüs tespit ediyor malesef açamadım:(

evet not32 içinde

VBCodeMod.DeleteLines

olan makroları virüs algılıyor


tamam bu dosyaya bir bak
 

Ekli dosyalar

Hocam dosyanız açıldı çok hoş bir dosya teşekkür ederim ellerinize sağlık.
Fakat şöyle bir sorun var.Hali hazırdaki şablon dosyam zaten işlemler yapıp değişiklikleri kaydederek çıktığımda .xls uzantılı bir dosya üretiyor yani bunun için benim bu kadar yolu takip etmemin pek manası yok.Üstelik bu dosya aracılığı ile yaptığımda şablonun aynı bir kopya elde ediyorum oysa şablon üzerinde işlem yapıp kaydettiğimde 2 şey kazanıyorum

1.)işlem yapılmış haliyle kaydedilmiş .xls uzantılı istediğim dosya
2.)Yapısı bozulmamış tekrar açtığımda ilk halinde olacak olan .xlt şablon dosyam


üzerinden zaman geçtiği için bir kere daha sorumu özetlesem iyi olacak sanırım.

Klasör içindeki şablon dosyasında işlemlerimi bitirdikten sonra eklemiş olduğum farklı kaydet butonuna bastığımda değişikliklerin uygulanmış olduğu haliyle bir .xls dosyasının aynı klasöre kaydedilmesini istiyorum.

İlginiz için teşekkür ederim.
 
bunu bir dene


Sub kayıtet()
ActiveWorkbook.Save
yer = ThisWorkbook.Path & "\" & Cells(1, "A").Value & ".xls"
deg = Mid(ThisWorkbook.FullName, 1, Len(ThisWorkbook.FullName) - 4) & ".xlt"
Dim DosyaSistemi
Set DosyaSistemi = CreateObject("Scripting.FileSystemObject")
Dim ds, a
Set ds = CreateObject("Scripting.FileSystemObject")
a = ds.FileExists(deg)
If a = True Then
MsgBox "Bu isimde bir dosya var"
Else
DosyaSistemi.CopyFile deg, yer
End If
End Sub
 
DosyaSistemi.CopyFile deg, yer

Aynı hatayı burada veriyor hocam.Aktarmada bir sorun olduğunu sanmıyorum ama siz çalıştırabildiyseniz dosyayı eklerseniz sevinirim.
 
şimdi anlamak için soruyorum xlt uzantılı dosyayı açıyorsunuz bunu xls uzantılı kayıtmı yapmak istiyorsunuz.
yoksa tam tersimi
 
Hocam .xlt uzantılı dosyam zaten kaydedip kapatmaya kalkarsam dosyanın son haliyle kaydedilmiş bir .xls uzantılı dosya üretiyor.
Bu durumda .xls uzantılı dosya ürettiğim son haliyle .xlt uzantılı dosyamda ana haliyle klasörde kayıtlı kalıyor.
----------------------------------------------------------------------------------------
Bunlar bir yana sorum netleşsin diye şunu deneyebilirsiniz.

-sablon.xlt dosyasını açın.
-Herhangi bir işlem yapın.(A2 ye halit yazın mesala)
-Farklı Kaydet penceresini açın.
-Orada DosyaAdı na bakarsanız (sablon1.xls) gördüğünüz gibi zaten .xls dosyası üretilmiş olacak.

İşte ben bu işlemleri yapıp orada dosya adını değiştirip istediğim dizini seçip kaydediyorum.
Sorum da bu:

Yani "Klasöre Kaydet" butonuna bastığımda dosya adı A1.Value.xls olsun
kaydedileceği yer şablonun bulunduğu klasör olsun.
 
dosyayı bir kalasörün içine koy
ve makroyu çalıştır oradan açılan listeden dosyanın bulunduğu klasörü seç
tamam de
 

Ekli dosyalar

1-dosyayı herhangibir klasörün içine koy
2-dosyayı aç
3-düğmeye dıkladığın zaman dosyanın hangi klasörde olduğunu seç
4- tamam de
bu kadar
 
hocam sorunum sayfa1 e girdiğim verleri otomatik sayfa 2 ye atıyor. I3 hücresindeki isimle farklı kaydetmek istiyorum. (sadece sayfa 2 yi kaydetmek istiyorum onuda sayfa biçimi aynı,formülleri değer olarak istiyorum.yardımlarınız için şimdiden teşekkür ederim.
 
Geri
Üst