Seçilen Alanı Resim olarak kaydeden makro

Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Merhabalar,

Excelde seçtiğim bir alanı (seçildikten sonra) bit-eşlem formatında resim olarak kaydeden bir makro yazılabilir mi acaba? Bu konuda yardımcı olabilecek arkadaşa şimdiden teşekkür ederim.

Not: Alanı, kayıt sonrasında Paint'e aktararak jpg dosyasına çevirmek için istiyorum.
 

ZorBey_

Destek Ekibi
Destek Ekibi
Katılım
14 Mayıs 2011
Mesajlar
2,185
Excel Vers. ve Dili
Excel 2003 Türkçe
Merhaba
İyi ÇAlışmalar
Arşivimde VArdı
Umarım İşinize Yarar.
 
Son düzenleme:
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Merhaba
İyi ÇAlışmalar
Arşivimde VArdı
Umarım İşinize Yarar.
Konuyla ilgili bir kod yazılmıştı, sanırım siz yazmıştınız ama silmişsiniz. Tekrar yüklemeniz mümkün mü acaba? Ben kodda bazı değişiklikler yapayım istedim (klasör yeri değiştirme vs.) ama bozdum sanırım :)
 
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Seçilen alanı resim olarak saklamak !!!

Kod yazabilen bir başka arkadaş yardımcı olabilirse çok sevinirim. İstediğim şey, excelde seçtiğim bir alan için şu işlemleri yaptırmak :

1- Kopyala / Resim Olarak Kopyala / Bit-Eşlem

2- F3 hücresindeki isimle C:\Excel klasörüne .jpg olarak bırak.

Destek verecek arkadaşa şimdiden teşekkürler...
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,607
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Merhaba,
Aşağıdaki kodu dener misiniz?
Kod yukarıda verdiğim linkte Sayın hamitcan'ın kodundan alıntıdır.
Kod:
Sub CopyRangeToJPG()
    Dim rng As Excel.Range
    Dim cht As Excel.ChartObject
    Const strPath As String = "C:\Excel\"
    Application.ScreenUpdating = False
        Set rng = Selection
        rng.CopyPicture xlScreen, xlPicture
        Set cht = ActiveSheet.ChartObjects.Add(0, 0, rng.Width + 10, rng.Height + 10)
        cht.Chart.Paste
        cht.Chart.Export strPath & [F3].Value & ".jpg"
        cht.Delete
ExitProc:
        Application.ScreenUpdating = True
        Set cht = Nothing
        Set rng = Nothing
End Sub
 
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Merhaba,
Aşağıdaki kodu dener misiniz?
Kod yukarıda verdiğim linkte Sayın hamitcan'ın kodundan alıntıdır.
Kod:
Sub CopyRangeToJPG()
    Dim rng As Excel.Range
    Dim cht As Excel.ChartObject
    Const strPath As String = "C:\Excel\"
    Application.ScreenUpdating = False
        Set rng = Selection
        rng.CopyPicture xlScreen, xlPicture
        Set cht = ActiveSheet.ChartObjects.Add(0, 0, rng.Width + 10, rng.Height + 10)
        cht.Chart.Paste
        cht.Chart.Export strPath & [F3].Value & ".jpg"
        cht.Delete
ExitProc:
        Application.ScreenUpdating = True
        Set cht = Nothing
        Set rng = Nothing
End Sub
Yoğunluktan birkaç gün sayfaya uğrayamadım, müsait olduğumda bugün deneyeceğim. Teşekkürler.
 
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Yoğunluktan birkaç gün sayfaya uğrayamadım, müsait olduğumda bugün deneyeceğim. Teşekkürler.
Merhaba, ancak şimdi deneyebildim. Kodun çalışması tamam. Klasöre .jpg olarak aktarıyor ancak resmin arka planına benim başka excel sayfalarımdan parçalar karışıyor. Bir grafik parçası , özet tablonun alan listesi parçaları filan...

Aynı kısma kendim bit-eşlem olarak uyguladığımda resim daha net ve sorunsuz çıkıyor.
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,607
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
...ancak resmin arka planına benim başka excel sayfalarımdan parçalar karışıyor. Bir grafik parçası , özet tablonun alan listesi parçaları filan...
Merhaba,
WinVista üzerinde Excel2003 ile yaptığım denemelerde sözünü ettiğiniz sorunla karşılaşmadım.
Sizde neden öyle olduğunu da bilmiyorum.

Kodu deneyen diğer üyeler görüşlerini yazarlarsa belki aydınlatıcı olur.
 
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Merhaba,
WinVista üzerinde Excel2003 ile yaptığım denemelerde sözünü ettiğiniz sorunla karşılaşmadım.
Sizde neden öyle olduğunu da bilmiyorum.

Kodu deneyen diğer üyeler görüşlerini yazarlarsa belki aydınlatıcı olur.
Aslında ben de (2010 vers.) yeni bir excel açıp test ettiğimde sorunsuz çalışıyordu. Problemin üstüne biraz gittiğimde anladım ki, sayfamdaki pivot tabloya ait olarak "varsayılan" olarak seçtiğim grafiği resmin arka planına yerleştiriyormuş. Aslında bu grafiği kullanmaktan vazgeçtiğim ve sildiğim halde nedense bunu yapmaya devam ediyor.

Bunu şurdan anladım, pivot tablo seçiliyken pivotcharta (grafik ekle penceresi) girdim ve başka bir grafiği varsayılan yaptım. Grafiği ise kullanmadım. Yine de resmin arkasında bu defa o grafiği görmeye başladım.

Şimdi sorun şu, hiç kullanmadığım bu grafikteki varsayılan özelliğini nasıl kaldıracağımı bulamadım. "Seçilen varsayılan grafiği kaldır" gibi bir düğme yok maalesef. Excel seçeneklerinde de buna dair birşey göremedim.Buna dair bir kod yazabilirseniz belki sorunum çözülecektir.
 
Son düzenleme:
Üst