Berhubung mbak Connie sedang tidak online, saya ingin mewakilinya Alkisah dlm cerita makro "AMBIL_DATA", bu Harumi menyiapkan (mendeklarasikan) 3 variable: *NAMA, NIS, KELAS* Dengan perjuangan suci, gigih dan tak kenal menyerah, 3 variable itu diisi dengan data hasil dari dioperasikannya *struktur "Selec Case"*. Akhirnya perjuangan mendebarkan itu berhasil mengisi 3 variable itu dengan 3 data, misal *Bambang, 12345, 3C*
Tiga data ini menurut RENCANA-nya akan di tampilkan di 3 cells pada sheet 'Form' yaitu cell *B5, B6 dan B7 *(atau dlm bhs VBA-Excel dapat disebut pula Cells(5,2), Cells(6,2), Cells(7,2) *Variable* adalah sejumput MEMORY di RAM, dapat diberi NAMA, diisi DATA, datanya dapat diganti dgn data lain kapan pun, termasuk dikosongkan, kapan saja, selama prosedur bejalan. VARIABLE istilah lengkapnya adalah MEMORY VARIABLE Pengisian/edit nya harus melalui pemrograman. *Cell*, secara teknis-komputer, juga berupa Memory Variable, hanya oleh excel dilengkapi dengan penampilan visualnya di suatu SHEET berupa kotak segi empat, sifatnya tidak jauh berbeda dengan Variable, dapat diisi tanpa pemrograman, langsung pada mode excel interaktif, dapat juga di isi/edit melalui pemrograman (VBA) Sekarang (perjuangan suci berikutnya) adalah *bgmana caranya agar isi/ data didalam 3 variable* (NAMA. NIS, KELAS) dipindahkan/dicopy ke 3 cell B5, B6 dan B7 (1) Apakah value/data di 3 CELL itu *dimasukkan/diisikan ke *3 Variable ?? Cell(r,c).Value = NamaVariable (2) Ataukah 3 VARIABLE itu *diisi dengan* data yg ada di 3 CELL ?? (lha tadi kan sudah diperjuangan untuk diisi hasil Select Case. kok mau diubah sebelum digunakan) NamaVariable = Cell(r,c).Value Nah Teman2 dapat menjawab sendiri bukan ? Catatan Gak Penting: Dlm VBA, tanda/operator *"="* bisa bertindak sbg salah satu OPERATOR sesuai jenis data/object yg dioperasikan; misal ** Sebagai *operator Penugasan / assignment *(gampangnya mengisikan data ke suatu tempat/memory ataupun cell Nama = "Asanti" , artinya variable Nama diberi nilai text "Asanti" ** Sebagai *operator Pembanding* (equal to) : x = 4=3 lebih mudah dipahami x = (4=3) "=" yg bertama = assignment, "=" yg kedua : pembanding hasilnya x = False Mungkin perbedaan tugas "=" inilah yg sering membuat pemula belajar VB / VBA sering agak bingung (karena belum membaca penjelasannya yg harusnya ada di buku yg dipegangnya) Mudah-mudahan dapat difahami & CMIIW ~Rara. *2012/6/22 Harumi Wanasita <[email protected]> > oh begitu ya mbak... > jdi berbeda yah dengan menuliskan dulu > nama =.cells(5,2).value > dengan > .cells(5,2).value = nama > jadi seperti sy bikin rumus baru di worksheet form dan tidak tehubung dengan worksheet bantuan gitu kah mbak? > trims... >* > ________________________________ > Dari: Markonah <[email protected]> > Dikirim: Jumat, 22 Juni 2012 14:48 > > coba dibandingkan makro asli dari mbak Harum -VS > makro yg telah kami coba perbaiki ini > kesalahan hanya pengisian cell terbalik > > harusnya cell diisi dengan variables hasil select case > yg mbak Harum lakukan Variables diisi dengan cell di FORM > > Sub GetData() > Dim nama, kelas As String > Dim nim As Long > With Worksheets("Bantuan") > nama = .Cells(1, 5).Value > Select Case nama > Case "Budi" > nis = .Cells(2, 2).Value: kelas = .Cells(2, 3).Value > Case "Bambang" > nis = .Cells(3, 2).Value: kelas = .Cells(3, 3).Value > Case "Wati" > nis = .Cells(4, 2).Value: kelas = .Cells(4, 3).Value > Case "Iwan" > nis = .Cells(5, 2).Value: kelas = .Cells(5, 3).Value > End Select > > Cells(1, 4).ClearContents > End With > > With Worksheets("Form") > .Cells(5, 2).Value = nama > .Cells(6, 2).Value = nis > .Cells(7, 2).Value = kelas > End With > End Sub

