kirimpertanyaan

 

Belajar dan konsultasi masalah Excel      

Macro & VBA, Hits: 130, Comments: 1, Bookmarked: 0, Followers: 4

Hallo Master,

 

Seneng banget akhirnya nemuin web ini, semoga permasalah yang saya alami bisa terselesaikan.

 

Kasusnya gini om, dalam file excel ada 4 sheet (instuksi pengisian,database,form 1,form 2) dibagian database ada isian Biodata,nilai, dan juga ada tombol Generate. Ketika tombol Generate di klik akan mengcopy sheet form 1 dan form 2 ke sheet berikutnya dengan nama sheet sesuai nama orang pada urutan pertama dan seterusnya. Sedangkan yg saya inginkan itu begitu tombol Generate di Klik akan mengcopy data form 1 dan form 2 ke workbook Baru dan begitu seterusnya sesuai jumlah orang yang ada di daftar.

 

Mohon bantuan master untuk macronya, di kasus saya ini.

Terima kasih sebelumnya.

Best Regards

Vicky

 

Nb: berikut saya lampirkan code macronya

Private Sub CommandButton1_Click()
Dim peserta, i, j, k, l, m, n, age, jumlah As Integer
Dim DataDiri(1 To 100, 1 To 3) As String
Dim DataTL(1 To 100, 1), tanggal As Date
Dim Nilai(1 To 100, 1 To 6) As String
Dim nama As String

Worksheets("database").Select
tanggal = Range("h2").Value
peserta = Range("h4").Value

peserta = 0

For n = 12 To 111
If IsEmpty(Cells(n, 3)) = False Then
peserta = peserta + 1
End If
Next n


For i = 1 To peserta
DataDiri(i, 1) = Cells(11 + i, 3).Value
DataDiri(i, 2) = Cells(11 + i, 8).Value
DataDiri(i, 3) = Cells(11 + i, 9).Value

DataTL(i, 1) = Cells(11 + i, 7).Value

Nilai(i, 1) = Cells(11 + i, 25).Value
Nilai(i, 2) = Cells(11 + i, 27).Value
Nilai(i, 3) = Cells(11 + i, 29).Value
Nilai(i, 4) = Cells(11 + i, 31).Value
Nilai(i, 5) = Cells(11 + i, 33).Value
Nilai(i, 6) = Cells(11 + i, 22).Value
Next i

m = 4

For i = 1 To peserta

j = ActiveWorkbook.Worksheets.Count
Worksheets("Halm. 1").Copy After:=Worksheets(j)
nama = DataDiri(i, 1)
ActiveSheet.Name = nama

Worksheets(m + i).Range("E7").Value = DataDiri(i, 1)
Worksheets(m + i).Range("E8").Value = DataTL(i, 1)
age = DateDiff("yyyy", DataTL(i, 1), tanggal)
Worksheets(m + i).Range("G8").Value = age
Worksheets(m + i).Range("E9").Value = DataDiri(i, 2)
Worksheets(m + i).Range("N7").Value = DataDiri(i, 3)
Worksheets(m + i).Range("L8").Value = tanggal

For l = 1 To 5
Worksheets(m + i).Cells(15 + l, 16).Value = Nilai(i, l)
Next l
Worksheets(m + i).Cells(24, 16).Value = Nilai(i, 6)

Worksheets("Halm. 2").Copy After:=Worksheets(m + i)
ActiveSheet.Name = nama & " Hal 2"
m = m + 1
Next i


End Sub


vicky
Wednesday, June 14, 2017
0% of 0 votes

Tambahan om...

Berikut Code Module nya :

Sub CopySheet()
'
' CopySheet Macro
'

'
    Sheets("Halm. 1").Select
    Sheets("Halm. 1").Copy After:=Sheets(4)
    Sheets("Halm. 1 (2)").Select
    Sheets("Halm. 1 (2)").Name = "Nama2 Hal1"
    Sheets("Halm. 2").Select
    Sheets("Halm. 2").Copy After:=Sheets(5)
    Sheets("Halm. 2 (2)").Select
    Sheets("Halm. 2 (2)").Name = "Nama 2 Hal2"
End Sub


vicky
14 Jun 2017
0

Kitab VBA Excel Level Satu

Buat pemula yang serius pengen belajar MACRO VBA Excel, silahkan baca buku berikut:

Kitab VBA Excel Level Satu edisi 2 sEDISI 2 : Rp. 60.000

BELI VERSI CETAK KLIK DI SINI

BELI VERSI DIGITAL KLIK DI SINI

LIHAT PREVIEW KLIK DI SINI

 

Partners

logo baru local1news

Newsletter

Daftarkan email anda untuk mendapatkan update dari Klinik Excel