makroyu farklı kaydetme

Katılım
5 Ağustos 2010
Mesajlar
126
Excel Vers. ve Dili
office excel 2003/2007
dosyayı makrosuz farklı kaydetme

makrolarla düzenlediğim sayfayı farklı kaydet dediğimde makrosuz sadece düzenlenmiş sayfaların olduğu bir excel sayfası açılsın istiyorum bu mümkün müdür?
 
Son düzenleme:

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
merhaba

excel2007 de; .xlsm dosyasını .xlsx formatında farklı kaydederseniz içersindeki makroları silerek normal excel dosyası olarak kaydetmiş olursunuz.
 
Katılım
5 Ağustos 2010
Mesajlar
126
Excel Vers. ve Dili
office excel 2003/2007
mrb sn uzmanamele nasılsınız

ben iş yerimde 2003 kullanıyorum excel 2003 için de aynı şey geçerli midir yoksa başka bir yolu var mı bu arada sizin bana verdiğiniz analiz düzenlemeyle ilgili makroya biraz eklemeler yaptım. bi inceler misiniz nasıl olmuş belki işinize de yarar (sanmıyorum ama :) ) daha hızlı hale getirebilir miyiz sizce


dosya boyutu 16,7 mb olduğundan ekleyemedim malesef. acaba içi boş bir dosyanın boyutunun bu kadar büyük olmasının nedeni makrolar olabilir mi?
zannetmiyorum gerçi ama bu sorunu nasıl çözebilirim
 
Katılım
5 Ağustos 2010
Mesajlar
126
Excel Vers. ve Dili
office excel 2003/2007
sn halit3 bey üstteki yazım alıntılarınıza cevap olacak niteliktedir sanırım. sorunu çözebilirsem uyarılarınıza uymaya çalışacağım
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,867
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
sn halit3 bey üstteki yazım alıntılarınıza cevap olacak niteliktedir sanırım. sorunu çözebilirsem uyarılarınıza uymaya çalışacağım
3 nolu mesajdaki dosyaya baktınızmı.?
 

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
merhaba

syn alfaoz, excel2003 için Halit beyin önerdiği linki inceleyiniz.

dosya boyutunun büyük olması içersinde bf kitabının olmasından kaynaklanıyor olabilir.
bu durumda önce dosyadaki sayfayı başka kitaba alıp sonra çalışmanızı yapmalısınız.

dosya winrar ile sıkıştırmayı deneyin, olmazsa mail atarsınız.
 
Katılım
5 Ağustos 2010
Mesajlar
126
Excel Vers. ve Dili
office excel 2003/2007
sıkıştırmak işe yaradı ancak yine 1.5 mb yer kaplıyor sn uzmanamele

dosyayı mail atacam ama adresinizi bilmiyorum

yanlız dosyayı kendi yapabileceklerinizle kıyaslamayın ben çok acemiyim henüz :)

halit3 bey dosyaya bakmamıştım ne demek istediğinizi de yazsaydınız bakardım. kurallar var sandım içinde ancak çok güzel bir dosyaymış teşekkür ederim çok işime yarayacak.
bunun dışında 2007 de olduğu gibi 2003 de de direk kaydetme yolu varsa onu da öğrenmek isterim.
 
Katılım
5 Ağustos 2010
Mesajlar
126
Excel Vers. ve Dili
office excel 2003/2007
dosyayı farklı bir sayfaya kaydettim sadece makroları görmeniz için yolluyorum incelerseniz sevinirim.
 

Ekli dosyalar

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,867
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
makrolarla düzenlediğim sayfayı farklı kaydet dediğimde makrosuz sadece düzenlenmiş sayfaların olduğu bir excel sayfası açılsın istiyorum bu mümkün müdür?
yukarıdaki yazdığınız işlemi yapıyor 3 nolu mesajdaki link
 
Katılım
5 Ağustos 2010
Mesajlar
126
Excel Vers. ve Dili
office excel 2003/2007
Uzmanamele'ye

Sn. uzmanamele bey

dosyayı boş bir excel sayfasına kopyaladım düzenledim ve denemesini yaptım. ilginç bir şekilde 3-4 dk süren işlem yarım dk olmadan sona erdi. acaba sürekli aynı dosyada aynı işlemleri yapmak dosya boyutunu büyütüyor olabilir mi? çünkü 16,7 mb olan dosyadaki bütün verileri yeni dosyaya kaydettim ve 1 mb bile yer kaplamadı ilerde aynı sorunla karşılaşırsam diye soruyorum bunun bir sebebi varmı varsa çözümü varmıdır? diğer dosyayıda incelemeniz için gönderecektim ancak boyutu sıkıştırılmış haliyle bile 1,5 mb kapladığı için ekleyemedim. yeni haliyle gönderiyorum vaktiniz olursa bi inceleyin ve komutlarla ilgili tavsiyeniz var mı daha kısa yoldan yapabilirmiyiz cevaplarsanız sevinirim.
 

Ekli dosyalar

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
merhaba

güzel bir çalışma olmuş, tebrik ederim.

kodun ilk satırını Application.ScreenUpdating = False
olarak değiştirirseniz çok daha hızlanacaktır.

programdan excele atılan veriler üzerinde çalıştığınızda excel2003 de dosya boyutunuz kodun her çalışmasında artabilir, excel2007 de bu sıkıntı olmuyor zannediyorum.
ancak mevcut sayfayı son yaptığınız şekilde başka dosyaya aldığınızda çok daha küçük bir dosyanız olacaktır.

çalışmanızda, benim sanırım 2-3 ay önce önerdiğim kodlara epey bir ilave yapmışsınız ve büyük yol katetmişsiniz.
çalışmalarınızda başarılar dilerim.
 
Katılım
5 Ağustos 2010
Mesajlar
126
Excel Vers. ve Dili
office excel 2003/2007
sn. uzmanamele

iyi dilekleriniz için teşekkür ederim. makro hakkında hiç bir şey bilmeyen ve hatta excel de makro ile program yazıldığını bile bilmeyen ben şimdi kendime yetmeye çalışıyorum ve her geçen gün yeni bir şeyler öğreniyorum. işimde de katkısını görmeye başladım günler süren işlemler yarım dk indi inanılacak gibi değil :))


buarada dip not düşmeliyim halit beyin verdiği dosyada farklı kaydet özelliğini kullanamadım hangisine tıklayacağımı bilemedim. dosya içindeki sayfaları ayrı ayrı sayfalar halinde kaydeden bi tanesi var ancak onda da bazı sayfalar yine makrolu olarak kaydediliyor. nasıl yapacağımı tarif ederseniz sevinirim. ayrı ayrı sayfalar olarak kaydetmesi benim için güzel bir özellik aynı zamanda olduğu gibi sadece makrosuz kaydetmesi de varsa daha iyi olur.
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,867
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
2 adet makro düğmesi söylediğiniz işlemi yapıyor hiç incelememişsiniz.

sayfaları çalışma kitabı yap içindeki makroları sil
bu sayfayı çalışma kitabı yap makroları sil
bu düğmelere bir tıklayın ne işlemi yapıyor gözleyiniz.
 
Katılım
5 Ağustos 2010
Mesajlar
126
Excel Vers. ve Dili
office excel 2003/2007
halit3 bey dosyanız güzel ve inceledim ancak BİLMİŞLİK yapmanın luzumu yok yukarıdaki yazımı okursanız denediğimi yazdım sonuçlarınıda yazdım ve karşılaştığım sorunlarıda yazdım
siz gönderdiğim dosyayı bir deneyin sonra itamda bulunursunuz. üsteki yazımı okuyun bi zahmet olacak size.
 
Katılım
5 Ağustos 2010
Mesajlar
126
Excel Vers. ve Dili
office excel 2003/2007
yönetici arkadaşlar konu başlığını değiştirebilir mi acaba? amaca pek hizmet etmiyor ilerde arama yapan arkadaşlar kolay bulsunlar
"excel belgesini makrosuz olarak kaydetme" olabilir mesela.
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,867
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
halit3 bey dosyanız güzel ve inceledim ancak BİLMİŞLİK yapmanın luzumu yok yukarıdaki yazımı okursanız denediğimi yazdım sonuçlarınıda yazdım ve karşılaştığım sorunlarıda yazdım
siz gönderdiğim dosyayı bir deneyin sonra itamda bulunursunuz. üsteki yazımı okuyun bi zahmet olacak size.
Sayın alfaoz :
Üslübünüz hiç iyi değil

buarada dip not düşmeliyim halit beyin verdiği dosyada farklı kaydet özelliğini kullanamadım hangisine tıklayacağımı bilemedim. dosya içindeki sayfaları ayrı ayrı sayfalar halinde kaydeden bi tanesi var ancak onda da bazı sayfalar yine makrolu olarak kaydediliyor.
Ben size gene aynı şeyi söylüyorum .

1,sayfaları çalışma kitabı yap içindeki makroları sil
2,bu sayfayı çalışma kitabı yap makroları sil

bir ve iki yazdığım isimli düğmeler bu işlemi yapıyor siz benzer düğmelerle karıştırıyorsunuz.aynı özellikte düğmeler mevcut kodun içinde

Kod:
For Each component In ActiveWorkbook.VBProject.VBComponents
If component.Type <> 100 Then
ActiveWorkbook.VBProject.VBComponents.Remove component
Else
Set modul = component.CodeModule
modul.DeleteLines 1, modul.CountOfLines
End If
Next
bu var bu kayıt yapılan sayfadaki makroları siler.

Kod:
ActiveSheet.DrawingObjects.Delete
buda nesneleri siler yani düğmeleri.

Sonuç olarak makrulu kayıt yapmamaktadır.
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,867
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
dosyanın içindeki kod istediğinizi yapıyor.
Sub çalışmakitabıyapkodlarısil()
deger = InputBox("dosyanın adı adını değiştirebilirsiniz.", "UYARI!", ActiveSheet.Name)
deger1 = InputBox("Sayfanın adını değiştirebilirsiniz.", "UYARI!", "sayfa1")
'dosya_adı = ActiveWorkbook.Name
Sayfa_Adı = ActiveSheet.Name
On Error Resume Next
Dim Baslik As String
Baslik = "Kaynak Dosyaları İçeren Klasörü Seçin"
Set Obj = CreateObject("shell.application")
Set Klasor = Obj.BrowseForFolder(0, Baslik, 50, &H0)
kaynak = Klasor.items.Item.Path
If Len(kaynak) = 3 Then
kaynak = Mid(kaynak, 1, 2)
Else
kaynak = kaynak
End If
If Not Klasor Is Nothing Then
If InStr(1, kaynak, "{") > 0 Then GoTo Atla
On Error Resume Next
Dim sayfa As Worksheet
For Each sayfa In Worksheets
MsgBox Worksheets
If sayfa.Name = Sayfa_Adı Then

Dim ds, a
Set ds = CreateObject("Scripting.FileSystemObject")
a = ds.FileExists(kaynak & "\" & sayfa.Name & ".xls")
If a = True Then
MsgBox "Bu isimde bir dosya var"
Exit Sub
Else

sayfa.Copy
For Each component In ActiveWorkbook.VBProject.VBComponents
If component.Type <> 100 Then
ActiveWorkbook.VBProject.VBComponents.Remove component
Else
Set modul = component.CodeModule
modul.DeleteLines 1, modul.CountOfLines
End If
Next
ActiveSheet.DrawingObjects.Delete
Sheets(ActiveSheet.Name).Name = deger1
ActiveWorkbook.SaveAs kaynak & "\" & deger & ".xls"
ActiveWorkbook.Close False
Exit Sub
End If
End If
Next sayfa
Else
Atla:
MsgBox "Lütfen Kaynak Klasör Seçimini Yapınız !", vbInformation, "DİKKAT"
End If

End Sub
bana göre dosyayı incelememişsiniz sadece bakmışınız.

makro çalıştırınca zaten yeniden dosya oluşturuyor yeni dosyaların içinde modüllerde makro olmaz ayriyetten userformlarda olmaz yanlızca sayfanın kod bölümünde makrolar olabilir onuda siliyor
 

Ekli dosyalar

Katılım
5 Ağustos 2010
Mesajlar
126
Excel Vers. ve Dili
office excel 2003/2007
sn halit3 bey

öncelikle üslubumun kötülüğü üslubunuzdan kaynaklanmıştır. yoksa forumda kimseye karşı saygısızlığım olmamıştır. burada kimseyle tartışmak için bulumuyorum. bir şeyler öğrenmeye çalışıyorum ancak siz herkesi sizin gibi ileri düzey makro biliyor gibi görürseniz bu gereksiz tartışma sürer gider.

sadece dediğiniz şekilde de yaptım ben de bi sorun var sanırım çünkü yine istediğimi yapamadım.

adım adım yazayım yaptıklarımı da eksiğim varsa söyleyin.

-dosya işlemleri adlı belgeyi açtım
-sayfaları çalışma kitabı yap içindeki makroları sil butonuna tıkladım.
-klasöre gözat sekmesi açıldı ve makrosuz kaydedeceğim belgeyi kaydettiğim dosyayı seçtim.
-dosya içine "Sayfa1" adında bir belge kaydedildi. bu belgeyi ekledim.
-daha sonra "bu sayfayı çalışma kitabı yap makroları sil" düğmesine tıkladım.
-"dosya adını değiştirebilirsiniz" diye bir pencere açıldı.
-dosya adını "alperen" olarak değiştirdim.
-aynı sekme tekrar açıldı.
-dosya adını tekrar "alperen" olarak değiştirdim.
-klasör seçmem için bir pencere açıldı ve asıl belgeyi kaydettiğim klasörü seçtim.
-çıkan sonuçları ekledim.

şimdi söylediklerinizi yaptığıma göre nere hata yaptığımı söyler misiniz. kusura bakmayın ben bu işlerde acemi olduğum için yürümeden önce emeklemeyi öğrenmem lazım.
 

Ekli dosyalar

Üst