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


 

Kirim email ke