Sayfadaki şekli Userform' a resim olarak almak

Katılım
29 Ocak 2024
Mesajlar
122
Excel Vers. ve Dili
Office 2016
Değerli Hocalarım merhaba,
Aktif dosyada "Sayfa1" adlı sayfada oluşturulan dikdörtgen şeklindeki şekli... "Shape1" olarak isimlendirilmiş olan şekil;

Userform içindenki Image1 nesnesi içine resim olarak almak istiyorum.

Kod:
UserForm1.Image1.Picture = LoadPicture(Shape1)
yardımlarınız için şimdiden teşekkürler,
iyi Çalışmalar.
 
Katılım
29 Ocak 2024
Mesajlar
122
Excel Vers. ve Dili
Office 2016
ç hücrenin kesişme noktalarında rast gelemi ?
Bu Shape1 belli bir hücre veya Hücrelerin içinde mi
yoksa bir kaç hücrenin kesişme noktalarında rast gelemi ?

Hücrenin fotosunu çekebiliyoruz da
Şekli belli bir hücre aralığına denk getirebiliriz, "B2:H3" hücre aralığına ayarlarız,
gerekirse hücre satır ve sütun genişliğini ayarlayarak ilgili şekli tek bir hücre içine de alabiliriz.

teşekkürler
 
Katılım
6 Mart 2024
Mesajlar
197
Excel Vers. ve Dili
Excel 2010 TR & Excel 2016 TR
Hücre aralığını istediğiniz gibi değiştirebilirsiniz.
Kodları test edip geri dönüş yapar mısınız.
C++:
Private Sub CommandButton1_Click()
    Dim FotoHucre As Range
    Set FotoHucre = Range("B2:H3") ' Hücreyi doğru seçtiğinizden emin olun

    Dim FotoAdres As String
    FotoAdres = Environ$("temp") & "\ExcelHucre.jpg"
    HucreResimleri FotoHucre
    
    Image1.Picture = LoadPicture(FotoAdres) ' UserFormda ki [ Image1 ] in resmini değiştirir
End Sub

Private Sub HucreResimleri(FotoHucre As Range)
' Orjin @Korhan Ayhan
' https://www.excel.web.tr/threads/makro-ile-huecrelere-resim-cekip-bilgisayara-aktarma.203328/#post-1140072

    Dim Grafik As Object

    ' Hücre aralığının resim olarak kopyala, yapıştır ve kes
    FotoHucre.CopyPicture xlScreen, xlBitmap
    ActiveSheet.Paste
    Selection.Cut

    ' Geçici grafik nesnesi oluştur ve resimi içine yapıştır
    Set Grafik = ActiveSheet.ChartObjects.Add(Left:=0, Top:=0, Width:=FotoHucre.Width, Height:=FotoHucre.Height)
    Grafik.Activate
    Grafik.Chart.Paste
 
    Grafik.Chart.Export Environ$("temp") & "\ExcelHucre.jpg"  ' Resmi JPG olarak kaydet
    DoEvents
    Grafik.Delete ' Geçici grafik nesnesini sil
End Sub
 
Son düzenleme:
Katılım
29 Ocak 2024
Mesajlar
122
Excel Vers. ve Dili
Office 2016
Hücre aralığını istediğiniz gibi değiştirebilirsiniz.
Kodları test edip geri dönüş yapar mısınız.
C++:
 Private Sub CommandButton1_Click()
    Dim FotoAdres As String
    FotoAdres = Environ$("temp") & "\ExcelHucre.jpg"

    Dim FotoHucre As Range
    Set FotoHucre = Range("B2:H3") ' Hücreyi doğru seçtiğinizden emin olun

    HucreResimleri FotoHucre

    Image1.Picture = LoadPicture(FotoAdres)

    Kill FotoAdres
End Sub

Private Sub HucreResimleri(FotoHucre As Range)
' Orjin @Korhan Ayhan
' https://www.excel.web.tr/threads/makro-ile-huecrelere-resim-cekip-bilgisayara-aktarma.203328/#post-1140072

    Dim Grafik As Object

    ' Hücre aralığının resim olarak kopyala, yapıştır ve kes
    FotoHucre.CopyPicture xlScreen, xlBitmap
    ActiveSheet.Paste
    Selection.Cut

    ' Geçici grafik nesnesi oluştur ve resimi içine yapıştır
    Set Grafik = ActiveSheet.ChartObjects.Add(Left:=0, Top:=0, Width:=FotoHucre.Width, Height:=FotoHucre.Height)
    Grafik.Activate
    Grafik.Chart.Paste

    Grafik.Chart.Export Environ$("temp") & "\ExcelHucre.jpg" ' Resmi JPG olarak kaydet
    DoEvents
    Grafik.Delete ' Geçici grafik nesnesini sil
End Sub
Hocam destek ve yardımlarınız çok teşekkür ederim
iyi akşamlar..
 
Üst