excel vb ile ilgili bir kod resim çekme

Kodla Büyü

sertokus

Süper Üye
Süper Üye
Mesajlar
2,350
Aşağıdaki kod çalışıyor
Private Sub CommandButton1_Click()
Dim resim_yolu As String
Range("e6").Select
resim_yolu = "D:\5a foto\5 ler\" & Range("A7").Value & ".jpg"

ActiveSheet.Pictures(2).Delete
ActiveSheet.Pictures.Insert resim_yolu
End Sub

Benim istediğim şey şu
resim adı 1484904173.5A_45.jpg
45 öğrenci numarası burada. Ben sadece 45 ile alakalı kısmı görsün ilk 14 karakteri umursamasın istiyorum.
Nasıl bu resmi çektiririm.
Not: resimleri kendim düzeltiyorum malesef. baştaki 14 karakteri siliyorum her seferinde. Bir e-okul foto android programı ile resimleri çekiyorum bu arada. onun için resim bu şekilde geliyor. Şu an yukarıda kullandığım kodda bu resim 45.jpg diye kayıtlı. ben böyle uğraşmak istemiyorum.
 
compteach06' Alıntı:
=parçaal(e6;15;2)
=sağdan(e6;2)

excel fonksiyonlarını kullanabilirsin.

Yapamıyorum hocam. çünkü önce öğrenci numarası seçiyorum.
seçtiğim öğrenci numarasına göre vb e kod yazarak arıyorum.
Baştaki 14 hane hep değişiyor sürekli
resimcek.jpg
 
vb tarafını bilmiyorum ama windows tarafında http://www.den4b.com/products/renamer adresinden programı indiriyorsunuz. sonra aşağıda ekran görüntüsü olan "rule" eklenecek. en sonunda da "rename" yaparsanız "abcdefghijk.5a_12.jpg" adlı dosyayı "12.jpg" haline getirebilirsiniz hocam.
 

Ekli dosyalar

  • renamer.png
    renamer.png
    30.7 KB · Görüntüleme: 373
range("A7").Value=45 ise mesala

resim_yolu="D:\5a foto\5 ler\"??????????????" "& Range("A7").Value &".jpg"

e benzer bişey olacak sanki. Ama bir türlü beceremedim.

belki trim,ltrim,rtrim tarzı bir kod da olabilir.
 
MaviAteş' Alıntı:
ona Regex deniyor. Excel macro Regex diye arattığım zaman, şu [1] siteyi buldum. İlk önce Türkçe kaynaktan regex nedir, ne işe yarar öğrenirseniz daha iyi olur.

[1] = http://analystcave.com/excel-regex-tutorial/

bunu öğrendiğimiz de iyi oldu evet hocam. Ama o dosya ismini nasıl alacağımı bilmiyorum ki kırpayım.
resim_yolu = "D:\5a foto\5 ler\1484904173.5A_45.jpg" dosyasındaki 1484904173.5A_45 değerini öncelikle excel e çekebilmeyim. Excelde kırpma işlemi zaten basit.
Zaten ben onu yapamıyorum.
 
Bir klasördeki dosya adlarını listelemek için aşağıdaki kodu kullanabilirsiniz.

Kod:
Sub Listele()

    Dim strFile As String
    Dim strDirectory As String
    
    strDirectory = "D:\5a foto\5 ler\"
    strFile = Dir(strDirectory)
    
    Do While strFile <> ""
        '****Dosya adı ile yapılacaklar buraya****
        'dosya adı *****strFile*****
        strFile = Dir
    Loop

End Sub
 
Yapmışken resim yolunu da çıkartayım dedim.
Kod:
Sub Listele()

    Dim strFile As String
    Dim strDirectory As String
    Dim resimYolu As String
    
    strDirectory = "D:\5a foto\5 ler\"
    strFile = Dir(strDirectory)
    
    Dim numara As String
    Dim dizi() As String
    
    Do While strFile <> ""
    
        dizi() = Split(strFile, "_")
        numara = dizi(UBound(dizi))
        
        If Range("A7").Value = numara Then
            resimYolu = strDirectory & strFile

            '****resimYolu ile YAPILACAKLAR BURAYA****

            strFile = ""
        Else
            strFile = Dir
        End If
         
    Loop

End Sub
 
Geri
Üst