Sütun değerine göre makro çalışması

Katılım
13 Mayıs 2005
Mesajlar
761
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
03.11.2024
P Sütunu son satırına kadar 30 rakamı var. Eğer arada 30 değerinden düşük rakam varsa makro çalışmadan hatalı satır bilgisi vererek durmalı, A sütununda 2. satırdan itibaren sıra numarası var. Eğer değer doğruysa kendi ekleyeceğim makronun çalışmasını istiyorum. Forumda çok örnek var ama örneklerden kendime uyduramadım kusura bakmayın.
 
Katılım
13 Mayıs 2005
Mesajlar
761
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
03.11.2024
Kod buldum işimi kısmen çözdüm ama hatalı olan satır bilgisini koda nasıl ilave edebilirim.
Kod:
Sub Kontrol()
    For sat = 2 To Cells(Rows.Count, "AP").End(3).Row
        If Cells(sat, "AP") = 1 Then
                MsgBox "Hata var..."
        Else:
        End If
    Next
    MsgBox "Kontrol tamamlandı"
End Sub
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba,

Verdiğiniz kodlar, AP sütunundaki değer =1 ise "hata var" mesajı verip, kontrole devam ediyor. İstediğiniz sadece mesaj satır numarası eklemekse, mesajı aşağıdakiyle değiştirin.

MsgBox sat & " .Satırda Hata var..."

.
 
Katılım
13 Mayıs 2005
Mesajlar
761
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
03.11.2024
Mesajı verip durması gerekir. Demekki yapamamışım düzeltme şansınız varmı acaba.
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Mesaj satırından sonra

Exit Sub

Ekleyiniz. Yalnız bu şekilde ilk gördüğü mesajdan sonra durur. Diğer satırları kontrol etmez.

Aşağıdaki gibi kullanarak tüm hatalı satırları görebilir siniz. Kullanım amacınıza göre kararı siz verin.
Kod:
Sub Kontrol()
    For sat = 2 To Cells(Rows.Count, "AP").End(3).Row
        If Cells(sat, "AP") = 1 Then
            deg = deg & Chr(10) & sat
        End If
    Next
    If deg = "" Then
        MsgBox "Kontrol Tamamlandı, Hata Yok..": Exit Sub
    End If
    MsgBox deg & Chr(10) & "Satırlarında Hata var..."
End Sub
 
Katılım
13 Mayıs 2005
Mesajlar
761
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
03.11.2024
Teşekkür ederim hocam sağolun
 
Katılım
13 Mayıs 2005
Mesajlar
761
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
03.11.2024
Hocam ekstra olacak ama L sütünunda Adı ve M sütünunda Soyadı yazıyor. Hata mesajına sütundaki isimleri getirebilirmiyiz. Satır bilgisinden daha kullanışlı olacak.
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Deneyiniz.

MsgBox Cells(sat, "L") & " " & Cells(sat, "M") & " Kişinin Satırında Hata var..."
 
Katılım
13 Mayıs 2005
Mesajlar
761
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
03.11.2024
Hocam İsimleri getirmiyor.

Kod:
Sub MUHTASAR_KONTROL()
    For sat = 2 To Cells(Rows.Count, "AP").End(3).Row
        If Cells(sat, "AP") = 1 Then
            deg = deg & Chr(10) & sat
        End If
    Next
    If deg = "" Then
        Call Secili_Alani_Text_Dosyasina_Yaz
        MsgBox "Kontrol Tamamlandı, Hata Yok.. TXT Dosyanız oluşturulmuştur.": Exit Sub
    End If
    MsgBox Cells(sat, "L") & " " & Cells(sat, "M") & " Kişinin Satırında Hata var..."
End Sub
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Diğer kodlarda kullanacaksınız sandım.
Kod:
Sub MUHTASAR_KONTROL()
    For sat = 2 To Cells(Rows.Count, "AP").End(3).Row
        If Cells(sat, "AP") = 1 Then
            deg = deg & Chr(10) & Cells(sat, "L") & " " & Cells(sat, "M")
        End If
    Next
    If deg = "" Then
        Call Secili_Alani_Text_Dosyasina_Yaz
        MsgBox "Kontrol Tamamlandı, Hata Yok.. TXT Dosyanız oluşturulmuştur.": Exit Sub
    End If
    MsgBox deg & Chr(10) & " Adlı Kişilerin Satırında Hata var..."
End Sub
 
Katılım
13 Mayıs 2005
Mesajlar
761
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
03.11.2024
Hocam oldu teşekkürler emeğinize sağlık.
 
Üst