Soru Excel'de veri doğrulama ile yapılabilir mi

istanbulcahan

Altın Üye
Katılım
11 Ocak 2008
Mesajlar
1,395
Excel Vers. ve Dili
Office 365 (Türkçe)
Altın Üyelik Bitiş Tarihi
12-11-2025
Merhabalar.

D1 hücresinde ilan numarası olmalı veri doğrulama seçtikten sonra , D1 hücresi D5-D9 hücre aralığını ilan numaraları yazılı olan ve E5-E9 hücre aralığı iilannumarası.jpg adları olan listeyi seçiyorum.
Module den aşağıdaki kodu yapıştırıp, CTRL S ile kaydedip VBA' dan çıkıyorum. Dosyaydı xlsm olarak kaydedip kapatıp tekrar açıyorum.
D1 deki dropdown listede herhangi bir ilanı seçiyorum, ancak D5-D9, E5-E9,F5-F9,G5-G9 hücrbhe aralığında birleşitirlmiş hücrede ilanın resmi gözükmüyor.
Örnek dosya ektedir. Çalışma form sheetinde dir.
İyi çalışmalar.
 

Ekli dosyalar

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,628
Excel Vers. ve Dili
2019 Türkçe
Merhaba.

Kodlar "Form" sayfasının kod kısmında olmalı siz kodları Module yazmışsınız.

Kodda düzenlemeler yaptım aşağıdaki kodu "Form" sayfasının kod kısmına kopyalayarak deneyin.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim ilanNo As String
    Dim resimYolu As String
    Dim resim As Picture
  
    If Target.Address = "$D$1" Then
        Range("D5") = ""
        ilanNo = Target.Value
        resimYolu = "C:\daire_form\" & ilanNo & ".jpg"
        On Error GoTo NoResim
        If Me.Pictures.Count = 1 Then
            Me.Pictures(1).Delete
        End If
      
        Set resim = Me.Pictures.Insert(resimYolu)
        With resim
            .Left = Me.Range("D5").Left
            .Top = Me.Range("D5").Top
            .Width = Me.Range("D5:G9").Width * 0.8
            .Height = Me.Range("D5:G9").Height * 0.8
            .BringToFront  ' Resmi öne getir
        End With
        Exit Sub
NoResim:
        Me.Range("D5").Value = "Resim hatası: " & Err.Description & vbCrLf & "Yol: " & resimYolu
        ' Alan beyaz kalmasın diye hata mesajı yaz
    End If
End Sub
 
Üst