• DİKKAT

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

Döngü ile satır satır Eğersay

Katılım
8 Haziran 2007
Mesajlar
401
Excel Vers. ve Dili
excel fonksiyonlar
Forumda emeği geçen herkese merhaba. Arkadaşlar A2:C10 arasında verilerim var. Derdim userformdaki texboxları her satırda saydırabilmek. Yani A2:C2 aralığında textboxlardaki ölçütleri sayacak aynı satırda E sütununda karşısına sonucu yazacak. Bu böyle A10:C10 'a kadar devam edecek. Her satırda aralık değiştiği için döngüyü kuramadım. İlgilenen arkadaşlara şimdiden teşekkürler.
 

Ekli dosyalar

siz ne istediğinizi anladınız mı_?
ben şahsen anlamadım

Hocam dosyadaki userformu açtığınızda karşınıza bir userform çıkar. Bu userformda 3 tane textbox var. Bu textboxlar ölçüt işlevi görüyor. örneğin textbox1 'e 1, textbox2'ye 2, textbox3'e 3 yazalım. Derdim sırasıyla A2:C2 aralığında 1,2,3 ü saydırmak. A3:C3 aralığında keza aynı...A10:C10 aralığında gene aynı. Bunu formülle yapsaydım sorun yoktu. Ölçütlerimizin H1 , I1 , J1 satırında olduğunu varsayarsak E2 satırına Eğersay (A2:C2,$H$1)+Eğersay(A2:C2,$I$1)+Eğersay(A2:C2,$J$1) yazıp aşağıya doğru formülü uzatmam yetecekti. Ben bunu makroyla yapmak istedim.
 
peki bu textboxlara başka değerlerde girilebilir mi_?

Hocam sanırım string değerlerden sözediyorsunuz.Dosyada yok ama iyi olur hocam. Hocam kendimce makro öğrenmeye çalışıyorum. Bu soruda benim esas amacım değişken aralıkların mantığını kavrayabilmek. Yani döngüyü kurduğumuzda A2:C2 aralığından A3:C3 aralığına nasıl geçiyoruz. Aklımca bunu çözmeye çalışıyorum. İlginiz ve emeğiniz teşekkürler.
 
Hocam sanırım string değerlerden sözediyorsunuz.Dosyada yok ama iyi olur hocam. Hocam kendimce makro öğrenmeye çalışıyorum. Bu soruda benim esas amacım değişken aralıkların mantığını kavrayabilmek. Yani döngüyü kurduğumuzda A2:C2 aralığından A3:C3 aralığına nasıl geçiyoruz. Aklımca bunu çözmeye çalışıyorum. İlginiz ve emeğiniz teşekkürler.

userform'un kod bölümüne kopyalayın ve deneyin
Kod:
Option Explicit
Private Sub CommandButton1_Click()
Dim ts, kaplan
'Değişken Tanımladık
kaplan = MsgBox("Değerleri Çıkartıyorum", vbYesNo, "Onay")
If kaplan = vbNo Then Exit Sub
'Devam İçin Soru
Sheets("Sayfa1").Range("E2:H65536").ClearContents
'E2:H65536 Aralığını Temizle
For ts = 2 To Sheets("Sayfa1").Cells(65536, "A").End(xlUp).Row
'Döngüye Al
Sheets("Sayfa1").Cells(ts, "E") = TextBox1.Text
'E sütununa Textbox1'deki Değeri Yaz
Sheets("Sayfa1").Cells(ts, "F") = TextBox2.Text
'F sütununa Textbox2'deki Değeri Yaz
Sheets("Sayfa1").Cells(ts, "G") = TextBox3.Text
'G sütununa Textbox3'deki Değeri Yaz
Sheets("Sayfa1").Cells(ts, "H") = WorksheetFunction.CountIf(Sheets("Sayfa1"). _
Range("A" & ts & ":C" & ts), TextBox1.Text) + WorksheetFunction.CountIf(Sheets _
("Sayfa1").Range("A" & ts & ":C" & ts), TextBox2.Text) + WorksheetFunction.CountIf( _
Sheets("Sayfa1").Range("A" & ts & ":C" & ts), TextBox3.Text)
'Ölçütleri Topla
Next
'Döngüyü Sonlandır
MsgBox "Değerleri Çıkarttım", vbInformation, "Bitiş"
'Sonuç Makrosu
End Sub
 
Sheets("Sayfa1").Cells(ts, "H") = WorksheetFunction.CountIf(Sheets("Sayfa1"). _
Range("A" & ts & ":C" & ts), TextBox1.Text) + WorksheetFunction.CountIf(Sheets _
("Sayfa1").Range("A" & ts & ":C" & ts), TextBox2.Text) + WorksheetFunction.CountIf( _
Sheets("Sayfa1").Range("A" & ts & ":C" & ts), TextBox3.Text)

Hocam benim aradığım bu kısmıydı. Çok çok teşekkürler. :)
 
Sheets("Sayfa1").Cells(ts, "H") = WorksheetFunction.CountIf(Sheets("Sayfa1"). _
Range("A" & ts & ":C" & ts), TextBox1.Text) + WorksheetFunction.CountIf(Sheets _
("Sayfa1").Range("A" & ts & ":C" & ts), TextBox2.Text) + WorksheetFunction.CountIf( _
Sheets("Sayfa1").Range("A" & ts & ":C" & ts), TextBox3.Text)

Hocam benim aradığım bu kısmıydı. Çok çok teşekkürler. :)

rica ederim
:yazici:
 
Geri
Üst