Excel Hücresini Kopyalayıp, Jpg formatında Kaydetme

Katılım
18 Ağustos 2014
Mesajlar
46
Excel Vers. ve Dili
Excel 07'
Visual Basici çok iyi kullanamıyorum onu baştan belirteyim, sadece üniversitedeyken biraz öğrenmiştim.

Range("I12:J13").Select
Selection.Copy

for : i = ...

şeklinde seçilecek hücreleri gösterebilir miyiz? onu soruyorum.
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,853
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
Visual Basici çok iyi kullanamıyorum onu baştan belirteyim, sadece üniversitedeyken biraz öğrenmiştim.

Range("I12:J13").Select
Selection.Copy

for : i = ...

şeklinde seçilecek hücreleri gösterebilir miyiz? onu soruyorum.
1 nolu mesajınızdaki soru ile şimdiki sorunuz çok farklı oldu 1 nolu sorunuz çözüldümü ?

Yukarıdaki mesajınızda kodlar ile ne yapmayı amaçlıyorsunuz?

yani ("I12:J13") hücreyi kapyalayıp nereye yapıştıracaksınız ve bu bir döngü ile olacaksa hangi satır sutün aralığında olacaktır.

sorularınızın net olarak anlaşılmadığını düşünüyorum.
 
Katılım
18 Ağustos 2014
Mesajlar
46
Excel Vers. ve Dili
Excel 07'
Range("I12:J13").Select
şeklinde hücreyi seçebiliyorum. Böylece hem resim hem altındaki yazı tek parça olarak seçilebiliyor. Bu şekilde seçip screenleme yapabilir miyiz. Bir de algoritmasını yaparsak sorunum çözülmüş olur.



Bunların bir de başka bir yazılımın veritabanına atılma kısmı var işimiz iş :)
 
Katılım
18 Ağustos 2014
Mesajlar
46
Excel Vers. ve Dili
Excel 07'
yani ("I12:J13") hücreyi kapyalayıp nereye yapıştıracaksınız ve bu bir döngü ile olacaksa hangi satır sutün aralığında olacaktır.

sorularınızın net olarak anlaşılmadığını düşünüyorum.
O gönderdiğim kod dizinini unutun, düzenlemeden gönderdim benim hatam. İşime yarayacağını düşündüğüm kod şu

Kod:
Range("i:j").Select
Ve resim kaydetmek için kullanacağımız code satırı da sanırım şöyle başlıyor

Kod:
rng.CopyPicture xlScreen, xlPicture
Kod:
For i = 12 To Cells(Rows.Count, "I").End(3).Row
bu da satır ve sütun aralığını seçmek için olmalı


Şimdi diyorumki şöyle yapabilir miyiz: Belirlediğimiz satır ve sütun aralığındaki hücreleri "seçip" , screenleyim. Belirlediğimiz dosyaya kaydetsin. Bunu yapmak mümkün mü? (tabi bunu makroya yazmayı kastediyorum, manuel seçim değil)

Bu Hüseyin Çoban kullanıcısının gönderdiği makro için düşündüğüm çözüm.
__________________________________________________________

Sizin gönderdiğiniz makro karmaşık olduğu için hata verme riskinin yüksek olacağını düşündüm. Ama sorunun çözümüne daha yakın gibi. Sadece tek tek seçerek değil, tek clicklemeyle dosyaya kaydolması gerekiyor.


Umarım sorunu anlatabilmişimdir. İyi çalışmalar.
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,853
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
Sorularıma cevap alamadığım için bu konuda başka mesaj yazmıyacağım size iyi çalışmalar diliyorum.
 
Katılım
18 Ağustos 2014
Mesajlar
46
Excel Vers. ve Dili
Excel 07'
İlk sorumu yanlış ifade ettiğimi söylerek sorunuzu cevaplamıştım. Size de iyi çalışmalar.
 

tugkan

Altın Üye
Katılım
6 Kasım 2004
Mesajlar
481
Excel Vers. ve Dili
Excel 2016
Türkçe 64 BIT
Altın Üyelik Bitiş Tarihi
16-10-2025
Merhaba,

Aşağıdaki kodu kullanarak "G" sütunundaki hücreleri ayrı ayrı resim dosyası olarak kaydedebiliyoruz.

Sub KOD()

Dim rng As Range, cht As ChartObject, say As Double, obj As Object
Const strPath As String = "c:\RESİMLER\"

Application.ScreenUpdating = False

For i = 1 To Cells(Rows.Count, "G").End(1).Row

Set obj = CreateObject("Scripting.FileSystemObject").GetFolder(strPath)
say = obj.Files.Count + 1

Set rng = Range(Cells(i, "G"), Cells(i, "G"))

rng.CopyPicture xlScreen, xlPicture
Set cht = ActiveSheet.ChartObjects.Add(0, 0, rng.Width + 0, rng.Height + 0)
cht.Border.LineStyle = 0
cht.Chart.Paste
cht.Chart.Export strPath & "" & say & ".jpg"
cht.Delete

ExitProc:

Next i
Set obj = Nothing: Set rng = Nothing: Set cht = Nothing
Application.ScreenUpdating = True

End Sub

Benim 2 adet sorum olacak:
1-"G" sütununun tamamını kaydediyor.Buna limit nasıl belirleyebiliriz? "Örnek: ilk 300 satırı kaydetsin veya G300'e kadar kaydetsin gibi"
2-Kaydettiği dosya isimlerini belli hücrelerden nasıl seçeriz? Örnek: G2 deki kaydettiği hücrenin dosya adı B2 'deki hücresi olsun.

Teşekkürler.
 
Üst