• DİKKAT

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

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

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.
 
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.
 
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ş :)
 
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.
 
Sorularıma cevap alamadığım için bu konuda başka mesaj yazmıyacağım size iyi çalışmalar diliyorum.
 
İlk sorumu yanlış ifade ettiğimi söylerek sorunuzu cevaplamıştım. Size de iyi çalışmalar.
 
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.
 
Geri
Üst