• DİKKAT

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

makro ile birden fazla koşullu BİRLEŞTİR formülünü yazmak

Katılım
29 Aralık 2007
Mesajlar
40
Excel Vers. ve Dili
2010-türkçe
Arkadaşlar;

Ekteki dosyamın DATA1 sayfası K sütununda bulunan aşağıdaki formülü makro ile yazarak sonucu almak istiyorum.
Makro kodu Userform CommandButton1_Click() olayı içerisine yazılmalı (Örnek dosyada yerini belirtim.


=EĞER(A2<>"";BİRLEŞTİR("Sayım sonucu Sistemde=";" ";EĞER(E2<>"";E2;"0");" ";"Sayılan=";" ";EĞER(G2<>"";G2;"0");EĞER(G2=E2;" * Sayım Doğru";EĞER(I2="FAZLA";BİRLEŞTİR(" * ";H2;" Adet Giriş Yapıldı ");BİRLEŞTİR(" * ";H2;" Adet Çıkış Yapıldı"))));"")

Bu formül sonucu uygun koşula göre K sütununda aşağıdaki 3 şıktan biri oluyor.
Sayım sonucu Sistemde= 1 Sayılan= 2 * 1 Adet Giriş Yapıldı
Sayım sonucu Sistemde= 2 Sayılan= 1 * 1 Adet Çıkış Yapıldı
Sayım sonucu Sistemde= 1 Sayılan= 1 * Sayım Doğru
 

Ekli dosyalar

Kod:
[COLOR="Red"][B]With d.Range("K2:K" & datasonsat)
        .Formula = "=IF(DATA1!A2="""","""",CONCATENATE(""Sayım sonucu Sistemde="", "" "",IF(DATA1!A2="""","""",DATA1!E2,""0""),"" "",""Sayılan="","" "",IF(DATA1!A2="""","""",DATA1!G2,""0""),IF(DATA1!G2=DATA1!E2,"" * Sayım Doğru"",IF(DATA1!I2=""FAZLA"",CONCATENATE("" * "",DATA1!H2,"" Adet Giriş Yapıldı ""),CONCATENATE("" * "",DATA1!H2,"" Adet Çıkış Yapıldı "")))),"" "")"
    .Value = .Value
End With[/B][/COLOR]

Bu formül yerine aşağıdakini yazarsanız yeterli olacaktır.

Kod:
son = Sayfa2.Range("A" & Rows.Count).End(3).Row
For a = 2 To son
If Not Sayfa2.Range("E" & a) <> 0 Then
Sayfa2.Range("E" & a) = 0
End If
If Not Sayfa2.Range("G" & a) <> 0 Then
Sayfa2.Range("G" & a) = 0
End If
If Sayfa2.Range("G" & a) = Sayfa2.Range("E" & a) Then
Sayfa2.Range("K" & a) = "Sayım Sonucu Sistemde " & Sayfa2.Range("E" & a) & " Sayılan=" & Sayfa2.Range("G" & a) & "*Sayım Doğru"
ElseIf Sayfa2.Range("G" & a) <> Sayfa2.Range("E" & a) And Sayfa2.Range("I" & a) = "FAZLA" Then
Sayfa2.Range("K" & a) = "Sayım Sonucu Sistemde " & Sayfa2.Range("E" & a) & " Sayılan=" & Sayfa2.Range("G" & a) & "* " & Sayfa2.Range("H" & a) & " Giriş Yapıldı"
ElseIf Sayfa2.Range("G" & a) <> Sayfa2.Range("E" & a) And Sayfa2.Range("I" & a) = "EKSİK" Then
Sayfa2.Range("K" & a) = "Sayım Sonucu Sistemde " & Sayfa2.Range("E" & a) & " Sayılan=" & Sayfa2.Range("G" & a) & "* " & Sayfa2.Range("H" & a) & " Çıkış Yapıldı"
End If
Next a
 
Son düzenleme:
Geri
Üst