Thank You Mas Hapsari
________________________________ Dari: Haps <[email protected]> Kepada: [email protected] Dikirim: Senin, 5 September 2011 19:22 Judul: Re: [belajar-excel] Mengisi kolom dengan 2 kriteria menggunakan macro Yang menjadi jawaban: (menyederhanakan code) Private Sub CommandButton1_Click() Dim n As Integer, i As Integer, c As Integer Dim Kol1 As Range Set Kol1 = Range("B3:B16") '?? Range("B20:B22").ClearContents For n = 1 To 4 For i = 1 To 4 'Pertemuan Pertama If Range("B18") = "KALKULUS/" & n And Range("B19") = i _ Then Range("B20") = Kol1(1, (1 + i)).Value If Range("B18") = "MATEMATIKA/" & n And Range("B19") = i _ Then Range("B20") = Kol1(2, (1 + i)).Value If Range("B18") = "SEJARAH/" & n And Range("B19") = i Then If n <= 2 Then Range("B20") = Kol1(3, (1 + i)).Value ElseIf n > 2 And n <= 4 Then Range("B20") = Kol1(4, (1 + i)).Value End If End If For c = 5 To 10 Step 5 'Pertemuan Kedua dan ketiga If Range("B18") = "GEOGRAFI/" & n And Range("B19") = i Then _ Range("B21")(c / 5, 1) = Kol1(c, (1 + i)).Value If Range("B18") = "KALKULUS/" & n And Range("B19") = i _ Then Range("B21")(c / 5, 1) = Kol1(c + 1, (1 + i)).Value If Range("B18") = "MATEMATIKA/" & n And Range("B19") = i Then _ Range("B21")(c / 5, 1) = Kol1(c + 2, (1 + i)).Value If Range("B18") = "SEJARAH/" & n And Range("B19") = i Then If n <= 2 Then Range("B21")(c / 5, 1) = Kol1(c + 3, (1 + i)).Value ElseIf n > 2 And n <= 4 Then Range("B21")(c / 5, 1) = Kol1(c + 4, (1 + i)).Value End If End If Next c Next Next End Sub Yang menjadi kendala: # Tabel tidak mengikuti kaidah database # Penamaan items (mata kuliah) juga masih tidak mengingat bahwa tiap mata kuliah masih akan diolah lebih lanjut / dijadikan kriteria sehingga untuk mendeteksinya satu persatu menghabisakan coding cukup panjang. -hapsari- 2011/9/5 Muhammad Robin <[email protected]> > > Dear Mr. Kid dan BeExceller lainnya, > Saya sudah coba pakai makro sebagaimana dilampiran, itu bekerja dan benar > semuanya. > Yang jadi pertanyaan adalah bagaimana menyederhanakan source code yang ada > dilampiran? > Terima Kasih

