• DİKKAT

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

Eğer formülü ile bilgi getirme

Katılım
15 Temmuz 2012
Mesajlar
2,802
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Merhaba hayırlı geceler.

Ekte gönderdiğim excel sayfamın N9 ile N13 hücrelerinde telefon numaraları var, bu numaraları D23 hücresine getirmek istiyorum.

Eğer N9 hücresi dolu ise D23 hücresinde 1 tane telefon numarası gözüksün,
Eğer N9 ve N10 hücresi dolu ise D23 hücresinde 2 tane telefon numarası gözüksün,
Eğer N9, N10 ve N11 hücresi dolu ise D23 hücresinde 3 tane numarası gözüksün,
Eğer N9, N10, N11 ve N12 hücresi dolu ise D23 hücresinde 4 tane numarası gözüksün,
Eğer N9, N10 ,N11, N12 ve N13 hücresi dolu ise D23 hücresinde 5 tane numarası gözüksün.

İç içe eğer formülü ile yapmaya çalıştım ancak bir türlü getiremedim, yardımcı olur musunuz?
 

Ekli dosyalar

Kod:
=BİRLEŞTİR(N9;" ";N10;" ";N11;" ";N12;" ";N13)

Fikir vermesi açısından deneyebilirsiniz.
 
Sayın calecale ilginiz için çok teşekkür ediyorum.

Sizin dediğiniz gibi denedim, telefon numaraları yan yana geliyor, formül içerisini alt+enter yaptığımda bu seferde D23 hücresi birleşik bir hücre olduğu için N10-N11-N12-N13 hücrelerini sildiğim zaman N9'daki telefon numarası D23 hücresinin en üst kısmına geliyor, yani hücreyi ortalamıyor.

Yapmak istediğim örneği ekliyorum.
 

Ekli dosyalar

Son düzenleme:
Bu dasyayı dosya tc ye yüklerseniz ve linkini atarsanız yardımcı olabileceğim buradan indiremiyorum maalesef.
 
Merhaba.

Kod:
http://dosya.co/2valf0gv4e2p/ÖRNEK1.xlsx.html
 
Denermisiniz.
Kod:
Sub dene()
Range("D23").Select
Selection.ClearContents
For i = 9 To 13
If Cells(i, "N") <> "" Then
a = Cells(i, "N")
End If
Cells(23, "D") = Cells(23, "D") & " " & a
Next
End Sub
 
Son düzenleme:
Sayın vardar07 ilginize teşekkür ederim, kodu modüle yapıştırıyorum ama hiç bir işlem yapmıyor.

Bir örnek gönderir misiniz?
 
Sayın calecale, D sütununu genişlettiğim zaman telefon numaraları yan yana geliyor.
 
Sayfa üzerine bir nesne ekleyip nesne üzerinde sağ tıkla açılan yerde makro ata tıklayıp modüldeki makro adını seçerek tamam tuşu ile etkinleştirebilirsiniz.
 
Sayın vardar07 kodu çalıştırdım, ancak hücre içerisinde üst tarafında hep bir boş satır kalıyor.
 

Ekli dosyalar

  • Ekran Alıntısı.JPG
    Ekran Alıntısı.JPG
    58.4 KB · Görüntüleme: 5
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim i
Dim a

Cells(23, "D") = ""
For i = 9 To 13
If Cells(i, "N") <> "" Then
a = Cells(23, "D") & Chr(10) & Cells(i, "N")
End If
Cells(23, "D") = a
Next
End Sub

Sayın vardar7 nin yazmış olduğu kodu ben bu şekilde çalıştırabildim.

Sayfa adı sağ tık yapınız.Kod görüntüle yapınız gelen sayfaya bu kodu yapıştırınız.Sayfada işlem yaptığınızda kod çalışacaktır.
 
Sayın calecale, kodu çalıştırdım ancak hücre içerisinde üst tarafında hep bir boşluk kalıyor.
 
Sayfanın kod kısmına Sayın vardar07'nin yazmış olduğu aşağıdaki kodu ekledim, güzel çalışıyor ancak D23 hücresinin içerisinde üst kısmında hep bir boşluk kalıyor.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [N9:N13]) Is Nothing Then Exit Sub
Cells(23, "D") = ""
For i = 9 To 13
If Cells(i, "N") <> "" Then
a = Cells(23, "D") & Chr(10) & Cells(i, "N")
End If
Cells(23, "D") = a
Next
End Sub
 
#6 Nolu mesajdaki kodu deneyiniz.
 
Sayın vardar07, kodu yenilemişsiniz, bu seferde telefon numaralarını D23 hücresi içerisinde yan yana getiriyor ben bunu istemiyorum.

Önceki kod gayet güzel çalışıyordu, sadece D23 hücresi içerisinde üst kısımda bir boşluk kalıyordu, bu çözülürse sorun kalmayacak.
 
Sayın vardar07, sizin hazırlamış olduğunuz kodu sayfanın kod bölümüne uyguladım, bu örneği gönderiyorum, örneği bir kontrol edebilir misiniz?
 

Ekli dosyalar

Birde bunu deneyin.

Kod:
Sub dene()
Range("D23").Select
Selection.ClearContents
For i = 9 To 13
If Cells(i, "N") <> "" Then
If Cells(23, "D") = "" Then
Cells(23, "D") = Cells(i, "N")
Else
Cells(23, "D") = Cells(23, "D") & Chr(10) & Cells(i, "N")
End If
End If
Next
End Sub
 
Merhaba.

Sayın vardar'ın müsadeleriyle, fikrimi belirtmek istedim (alternatif).

Sayın vardar'ın verdiği ilk kod'daki If..... satırından sonra;
aşağıdaki satırı ekleyip, bir sonraki satırdaki Chr(10) yerine b yazarak da
istenilen sonuca ulaşılabilir sanırım.
Kod:
    If Cells(23, "D") <> "" Then [B][COLOR="Blue"]b[/COLOR][/B] = Chr(10)
 
Sayın Ömer Bey hayırlı geceler.

Sizin dediğiniz gibi yaptım ancak yine istediğim sonuca ulaşamıyorum. Sayır vardar07'nin sonradan gönderdiği
kodu Private Sub Worksheet_Change(ByVal Target As Range) bu başlık altına aldım, kod gayet güzel çalışıyor,
bu seferde hep N9 ile N13 hücrelerinde değişiklik yaptığımda D23 hücresini seçiyor.


Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [N9:N13]) Is Nothing Then Exit Sub
Range("D23").Select
Selection.ClearContents
For i = 9 To 13
If Cells(i, "N") <> "" Then
If Cells(23, "D") = "" Then
Cells(23, "D") = Cells(i, "N")
Else
Cells(23, "D") = Cells(23, "D") & Chr(10) & Cells(i, "N")
End If
End If
Next
End Sub
 
Geri
Üst