• DİKKAT

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

Worksheet_SelectionChange Kod Kısaltma

Katılım
29 Ocak 2024
Mesajlar
277
Excel Vers. ve Dili
Office 2016
Merhaba,

sayfada önceden belirlenmiş olan ( E12, E25, M8, M21) sadece 4 hücre seçildiği zaman çalıştırması için aşağıdaki şekilde oluşturdum ama;
kod uzun oldu bu kodun daha da kısaltm imkanı olurmu diye araştırıyorum.

bu konuda yardımcı olursanız sevinirim.
iyi akşamlar.

1: "E12"
2: "E25"
3: "M8"
4: "M21"


Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Not Intersect(Target, Range("E12")) Is Nothing Then
   
   test 1
   Exit Sub
End If

If Not Intersect(Target, Range("E25")) Is Nothing Then
   
   test 2
   Exit Sub
   
End If


If Not Intersect(Target, Range("M8")) Is Nothing Then
   
   test 3
   Exit Sub
   
End If

If Not Intersect(Target, Range("M21")) Is Nothing Then
   
   test 4
   Exit Sub
   
End If

End Sub

[(code]
 
Selamlar
aşağıda ki gibi deneyiniz

CSS:
If Not Intersect(Target, Range("E12, E25, M8, M21")) Is Nothing Then
  
   MsgBox "Deneme"
   Exit Sub
End If
 
Selamlar
aşağıda ki gibi deneyiniz

CSS:
If Not Intersect(Target, Range("E12, E25, M8, M21")) Is Nothing Then
 
   MsgBox "Deneme"
   Exit Sub
End If
Hocam teşekkürler,
yalnız şöyle bir durum söz konusu;
buradaki 4 hücreden her biri için ayrı bir "deger" (1,2,3,4) döndürecek

"E12" : 1
"E25" : 2
"M8" : 3
"M21" : 4

Kod:
dim deger As Integer
MsgBox deger


bu durum nasıl ifade edilebilir.
iyi akşamlar.
 
Deneyiniz..

C++:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("E12, E25, M8, M21")) Is Nothing Then
       Test Target.Address(0. 0)
    End If
End Sub

C++:
Sub Test(Adres As String)
    Select Case Adres
        Case "E12" : 1
        Case "E25" : 2
        Case "M8" : 3
        Case "M21" : 4
    End Select
End Sub
 
Teşekkür ederim Korhan Hocam.
iyi Çalışmalar.
 
Geri
Üst