• DİKKAT

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

Form son sayıt getirme

Katılım
5 Eylül 2007
Mesajlar
1,247
Excel Vers. ve Dili
ofis 2010
http://s4.dosya.tc/server3/xcnfbx/FORM.rar.html

excel' de
Kod:
 =EĞER(EHATALIYSA(İNDİS(ADRES!$D$2:$D$257;BÜYÜK(EĞER(ADRES!$A$2:$A$257=$C$5;EĞER(ADRES!$C$2:$C$257=B14;SATIR(ADRES!$C$2:$C$257)));1)-1;0));" ";İNDİS(ADRES!$D$2:$D$257;BÜYÜK(EĞER(ADRES!$A$2:$A$257=$C$5;EĞER(ADRES!$C$2:$C$257=B14;SATIR(ADRES!$C$2:$C$257)));1)-1;0))
excel sayfasında formülle son girilen adresi getirebiliyorum. aynı işlemi form üzerinde nasıl yapabilirim. müşteriye ilişkin adres değişikliğinde mevcut adresi silip yenisini yazmadan ilave adresi de yazarak değişen adresleri takip ediyorum. her zaman güncel adres sondaki oluyor. Teşekkürler.
 
Kod:
sonsat = Sheets("ADRES").Range("A65536").End(xlUp).Row
 
. . .

Merkez ve Şube1 için örnek kodlama aşağıdadır. Geri kalanı siz çoğaltabilirsiniz.
Msgbox kısmını yazdırmak istediğiniz alana göre değiştirirsiniz.

Kod:
Sub kod()
    
    Dim SA As Worksheet: Set SA = Sheets("ARAMA")
    Dim SD As Worksheet: Set SD = Sheets("ADRES")
    
    vergino = SA.Range("C5")
    
    merkez = Empty
    şube1 = Empty
    
    For i = SD.Cells(Rows.Count, "A").End(3).Row To 2 Step -1
        
        If merkez = Empty Then
            If SD.Cells(i, "A") = vergino And _
                SD.Cells(i, "C") = SA.Range("B14") Then
                merkez = SD.Cells(i, "D")
            End If
        End If
        
        If şube1 = Empty Then
            If SD.Cells(i, "A") = vergino And _
                SD.Cells(i, "C") = SA.Range("B15") Then
                şube1 = SD.Cells(i, "D")
            End If
        End If
        
    Next i
    
    MsgBox merkez & Chr(10) & şube1
    
End Sub

. . .
 
Hatalı soru

. . .

Merkez ve Şube1 için örnek kodlama aşağıdadır. Geri kalanı siz çoğaltabilirsiniz.
Msgbox kısmını yazdırmak istediğiniz alana göre değiştirirsiniz.

Kod:
Sub kod()
    
    Dim SA As Worksheet: Set SA = Sheets("ARAMA")
    Dim SD As Worksheet: Set SD = Sheets("ADRES")
    
    vergino = SA.Range("C5")
    
    merkez = Empty
    şube1 = Empty
    
    For i = SD.Cells(Rows.Count, "A").End(3).Row To 2 Step -1
        
        If merkez = Empty Then
            If SD.Cells(i, "A") = vergino And _
                SD.Cells(i, "C") = SA.Range("B14") Then
                merkez = SD.Cells(i, "D")
            End If
        End If
        
        If şube1 = Empty Then
            If SD.Cells(i, "A") = vergino And _
                SD.Cells(i, "C") = SA.Range("B15") Then
                şube1 = SD.Cells(i, "D")
            End If
        End If
        
    Next i
    
    MsgBox merkez & Chr(10) & şube1
    
End Sub

. . .

makroyu uyguladın, makro sorunsuz çalışıyor, ben sorumu tam anlaşılır soramadım. ARAMA sayfasını kullanmadan bilgileri formla getirmeye çalışıyorum. diğer bilgileri form' a ekleyebiliyorum karışmasın diye sade hale getirdim. Benim yapmak istediğim ARAMA sayfasındaki bilgileri formla yapmak. ADRES haricinde diğerlerini hazırlayabiliyorum. Teşekkürler.
 
makroyu nereye ilave etmeliyim.

Kod:
sonsat = Sheets("ADRES").Range("A65536").End(xlUp).Row
teknik olarak fazla bilgim yok. sadece örneklerdeki uygulamalarla işimi görecek kadar bir şeyler hazırlayabiliyorum. bir kaç deneme yaptım ama yazdığınız uygulamayı nereye ilave edeceğimi çözemedim. Teşekkürler.
 
makroyu uyguladın, makro sorunsuz çalışıyor, ben sorumu tam anlaşılır soramadım. ARAMA sayfasını kullanmadan bilgileri formla getirmeye çalışıyorum. diğer bilgileri form' a ekleyebiliyorum karışmasın diye sade hale getirdim. Benim yapmak istediğim ARAMA sayfasındaki bilgileri formla yapmak. ADRES haricinde diğerlerini hazırlayabiliyorum. Teşekkürler.
. . .

Örnek dosyanızda çok fazla form var. Hangisinden bahsediyorsunuz bilmiyorum.
Arama sayfasıyla bir işimiz yok.

Verdiğim kodları adreslere göre çoğalttıktan sonra msgboxları iptal edip
Textbox1=merkez
Textbox2=şube1 şeklinde kullanabilirsiniz.

vergino = SA.Range("C5") bu kısımda da vergi numarasını tanımlamalısınız.
Zaten onu getirebiliyorum diye yazmışsınız.

Test edin. Yine yapamadığınız kısımlarda destek oluruz.

. . .
 
Geri
Üst