Kamis, 18 April 2013

[belajar-excel] Digest Number 2244

15 New Messages

Digest #2244
1a
Re: Bagaimana cara mengambil data dari workbook lain by "Mr. Kid" nmkid.family@ymail.com
2a
Re: Advanced Filet + Pivot VBA by "Mr. Kid" nmkid.family@ymail.com
3a
Hapus range dari ListBox.ListIndex by "lapendosol opik" lapendosol
3b
Re: Hapus range dari ListBox.ListIndex by "Mr. Kid" nmkid.family@ymail.com
4a
Re: excel dengan database mysql by "Rahmat Hermawan" ione_1984
4b
Re: excel dengan database mysql by "Mr. Kid" nmkid.family@ymail.com
4c
Re: excel dengan database mysql by "Rahmat Hermawan" ione_1984
4d
Re: excel dengan database mysql by "Mr. Kid" nmkid.family@ymail.com
5a
Mengunci sheet by "Jamil Makhmudin" jamil_kbm
5b
Re: Mengunci sheet by "Mr. Kid" nmkid.family@ymail.com
6a
Re: Formula untuk menemukan hasil pada data baris dan kolom by "agussantosardiansyah" agussantosardiansyah
7a
formula di tengah kata by "Fuadi Arief" see_fu
7b
9
bagaimana menampilkan kriteria nilai secara otomatis by "Anggraini Hapsari" anggrainihapsari@ymail.com

Messages

Wed Apr 17, 2013 9:14 am (PDT) . Posted by:

"Mr. Kid" nmkid.family@ymail.com

Topik ini sudah 2 hari belum ada merespon. Penanya juga tidak segera
menyertakan potongan workbook (tanpa data tapi berisi VBA).
Error yang terjadi berbunyi :
Can't find project or library
Error ini menunjukkan tidak ditemukannya sebuah object atau suatu library
yang harusnya ada.
Bisa jadi, dalam workbook milik penanya ada sebuah userform atau dalam
worksheet ada object control yang belum dikenali komputer setempat. Misal
DTPicker atau Calendar.

Wassalam,
Kid.

On Mon, Apr 15, 2013 at 11:41 AM, lkm jktind <lkmjktind@gmail.com> wrote:

> **
>
>
> sumbernya : J:\Saham&#92;LK.xlsm dan J:\Saham&#92;OHLC.xlsm.
> digunakan di : J:\Saham&#92;Komparasi.xlsm.
>
> sudah di buat, tapi semalam menjadi error lagi .
> Pesan error nya : Can't find project or library
>
> Sub Kon_isi_data_LK()
> Dim KP_rng As Range, KP_rngLoop As Range
> Dim Brs As Long, Klm As Long
> Dim t As Long
>
> ' Dim LK
> Dim LK_Lnk_rng As Range, LK_Qtr_rng As Range, LK_kur_rng As Range,
> LK_dat_rng As Range
> Dim LK_C As Long, LK_R As Long, CR As String
> Dim x As Long
> Dim O_Tgl_rng As Range, O_Tic_rng As Range, O_Cls_rng As Range, O_Lis_rng
> As Range
>
> Workbooks("LK.xlsm").Activate
> Sheets("DT_LK").Activate
> LK_C = Range("A1").End(xlToRight).Column
> LK_R = Range("A1").End(xlDown).Row
> Set LK_Lnk_rng = Sheets("DT_LK").Range("A4:A" & LK_R)
> Set LK_Qtr_rng = Sheets("DT_LK").Range(Cells(1, 11), Cells(1, LK_C))
> Set LK_kur_rng = Sheets("DT_LK").Range(Cells(2, 11), Cells(2, LK_C))
> Set LK_dat_rng = Sheets("DT_LK").Range(Cells(4, 11), Cells(LK_R,
> LK_C))
>
> Workbooks("OHLC.xlsm").Activate
> Sheets("OHLC").Range("A2").Select
> x = Range("A2").End(xlDown).Row
> Set O_Tgl_rng = Sheets("OHLC").Range("A2", Range("A2").End(xlDown))
> Set O_Tic_rng = Sheets("OHLC").Range("B2", Range("B2").End(xlDown))
> Set O_Cls_rng = Sheets("OHLC").Range("J2", Range("J2").End(xlDown))
> Set O_Lis_rng = Sheets("OHLC").Range("T2:T" & x)
> O_Tgl_rng.Select
> O_Lis_rng.Select
>
> Workbooks("Komparasi.xlsm").Activate
> Worksheets("KP_01").Select
> Set KP_rng = Sheets("KP_01").Range("A5", Range("A5").End(xlDown))
> t = 5
> Range("A5").Activate
> For Each KP_rngLoop In KP_rng
> CR = "C3"
> With KP_rngLoop
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("C1"), LK_Qtr_rng, 0)
> Cells(t, 3).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "D3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("D1"), LK_Qtr_rng, 0)
> Cells(t, 4).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "E3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("E1"), LK_Qtr_rng, 0)
> Cells(t, 5).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "F3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("F1"), LK_Qtr_rng, 0)
> Cells(t, 6).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "G3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("G1"), LK_Qtr_rng, 0)
> Cells(t, 7).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "H3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("H1"), LK_Qtr_rng, 0)
> Cells(t, 8).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "I3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("I1"), LK_Qtr_rng, 0)
> Cells(t, 9).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "J3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("J1"), LK_Qtr_rng, 0)
> Cells(t, 10).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "K3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("K1"), LK_Qtr_rng, 0)
> Cells(t, 11).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "N3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("N1"), LK_Qtr_rng, 0)
> Cells(t, 14).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "O3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("O1"), LK_Qtr_rng, 0)
> Cells(t, 15).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "P3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("P1"), LK_Qtr_rng, 0)
> Cells(t, 16).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "Q3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("Q1"), LK_Qtr_rng, 0)
> Cells(t, 17).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "U3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("U1"), LK_Qtr_rng, 0)
> Cells(t, 21).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "V3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("V1"), LK_Qtr_rng, 0)
> Cells(t, 22).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
> CR = "W3"
> Brs = WorksheetFunction.Match(Cells(t, 1) & Range(CR), LK_Lnk_rng,
> 0)
> Klm = WorksheetFunction.Match(Range("W1"), LK_Qtr_rng, 0)
> Cells(t, 23).Value = WorksheetFunction.Index(LK_dat_rng, Brs, Klm)
>
> Cells(t, 18).Value =
> Application.WorksheetFunction.SumIfs(O_Cls_rng, O_Tic_rng, Range("A" & t),
> O_Tgl_rng, Range("R1"))
> Cells(t, 19).Value =
> Application.WorksheetFunction.SumIfs(O_Cls_rng, O_Tic_rng, Range("A" & t),
> O_Tgl_rng, Range("S1"))
> Cells(t, 20).Value =
> Application.WorksheetFunction.SumIfs(O_Lis_rng, O_Tic_rng, Range("A" & t),
> O_Tgl_rng, Range("T1"))
> End With
>
> t = t + 1
> Next KP_rngLoop
>
> End Sub
>
> Mohon bantuan nya .
>
> Salam
>
> Lukman
>
> --- Mods ---
> Script diatas tidak dapat membantu menemukan penyebab error.
> Lampiran workbook yang datanya sudah dikurangi jumlah record malah lebih
> membantu.
> ------------
>
>

Wed Apr 17, 2013 9:25 am (PDT) . Posted by:

"Mr. Kid" nmkid.family@ymail.com

File terlampir mencoba menata letak field Month agar bisa disembunyikan.
Tidak ada yang diubah pada VBA-nya.

Wassalam,
Kid.

2013/4/17 belajar excell <belajar.excell@yahoo.com>

> **
>
>
> Pak Kid, terima kasih untuk bantuannya, sekali lagi saya mendapat ilmu
> tambahan yang sangat membantu saya dalam mempelajari VBA.
> Mohon maaf karena saya kurang menjelaskan pivot seperti apa yang di
> inginkan, maksd sya adalah hasil dari advanced filter itu berupa
> penjumlahan ( sum ) pada pivot ( seperti pada contoh sheet - hasil yang di
> inginkan ).
>
> Jadi pada waktu advanced filter kita pilih month 1 dan month 2, maka
> bentuk pivot sumnya juga adalah hasil penjumlahan dari month1 dan 2.
> kalu saya pilih month 6 dan month 7, maka pivot sumnya adalah hasil
> penjumlahn dari moonth 6 dan 7. begitu juga setrusnya.
>
> sekali lagi mohon maap karena udah merepotkan, maklumlah wawasan saya
> dalam VBA masih sangat minim, hehehe
>
> Di tolong ya Pak Kid dan rekan2 semuanya,,
>
> RS
>
> ------------------------------
> *From:* Mr. Kid <mr.nmkid@gmail.com>
> *To:* BeExcel <belajar-excel@yahoogroups.com>
> *Sent:* Wednesday, April 17, 2013 2:47 PM
>
> *Subject:* Re: [belajar-excel] Advanced Filet + Pivot VBA
>
> Bagaimana jika seperti file terlampir ?
> Cukup dengan sheet Test, tapi bisa filter dengan VBA (user ndak perlu
> filter langsung di pivot table).
>
> btw, kenapa user tidak diminta filter langsung di pivot table ya....
>
> Wassalam,
> Kid.
>
>
>
> 2013/4/17 <belajar.excell@yahoo.com>
>
> **
>
> ** Miss Jan, terima kasih byk utk ilmunya..saya sudah ganti sheet4 jadi
> sheet22,setelah d jalankan berhasil.
> Tapi masalahx adalah hasil pivotnya mengacu pada sheet test.bukan mengacu
> pada sheet result.
> Sebenarx yg saya inginkan adalah dari sheet test,di saring lg datax yg
> nnti d taruh di sheet result.dari hasil saringan di sheet result tersebut
> maka di buat pivot..
>
> Mohon bantuannya ya ...
>
> RS
>
>
>
>
>
> Sent from my BlackBerry®
> powered by Sinyal Kuat INDOSAT
> ------------------------------
> *From: * Jan Raisin <miss.jan.raisin@gmail.com>
> *Sender: * belajar-excel@yahoogroups.com
> *Date: *Wed, 17 Apr 2013 08:43:35 +0700
> *To: *<belajar-excel@yahoogroups.com>
> *ReplyTo: * belajar-excel@yahoogroups.com
> *Subject: *Re: [belajar-excel] Advanced Filet + Pivot VBA
>
>
> Hai RS,
>
> scriptnya error di baris berikut:
>
> Set objTable = Sheet4.PivotTableWizard
>
> karena dalam workbook tersebut tidak ada sheet dengan nomor index 4, coba
> lihat gambar di bawah ini (hasil screen shoot monitor)
>
> [image: Gambar sisip 2]
>
> sheet yang ada adalah sheet1, sheet2, sheet22, dan sheet3.
> Karena Jan melihat sheet22 masih kosong sama sekali, coba ganti scriptnya
> menjadi seperti ini:
>
> Set objTable = Sheet22.PivotTableWizard
>
> atau dengan cara lain, ubah nomor index sheet22 menjadi sheet4 tanpa
> melakukan modifikasi terhadap script yang sudah ada.
>
> lalu jalankan kembali script yang anda susun.
>
> Sebagai tambahan wacana, ada 2 macam error saat penulisan script, yaitu:
> 1. Syntax Error, hal ini dapat langsung diketahui karena script VBA akan
> berubah menjadi warna merah
> 2. Run-Time Error, hal ini baru diketahui saat script dijalankan, untuk
> mengetahui dimana letak salahnya dapat dengan menekan tombol F8 berkali-kali
>
> Kesalahan dalam script di atas dinamakan Run-Time Error
>
> Semoga penjelasan yang singkat ini dapat menjadi tambahan ilmu bagi semua,
> jika ada yang salah tolong dikoreksi.
>
> Wassalam,
>
> -Miss Jan Raisin-
>
>
> Pada 16 April 2013 19.47, belajar excell <belajar.excell@yahoo.com>menulis:
>
> **
>
> Selamat malam semuanya,
>
> Mohon maaf lagi, kali ini sya mau Tanya lagi mengenai Pivot lagi. Tapi
> kali ini sya coba padukan Advanced filter dan Pivot, tapi masalahnya
> Sepertinya syntax untuk pivotnya tidak berkerja pada sheet hasil advanced
> filter, Mohon bantuannya bagaimana agar syntax tersebut dapat berfungsi
> lagi ya ?
>
> Terima kasih banyak atas bantuannya
>
> RS
>
>
>
>
>
>
>

Wed Apr 17, 2013 9:59 am (PDT) . Posted by:

"lapendosol opik" lapendosol

Dear master excel,
Saya membuat file excel yang berisi form, form berisi listbox.RowSource
Saya ingin menghapus Range berdasarkan ListBox.ListIndex nya
Sudah dicoba-coba tapi gagal terus, kode yang pengen saya masukkan:
            Range("A21:C21").Delete Shift:=xlUp
Angka 21 dalam Range("A21:C21") dibuat dinamis sesuai listindex yang di klik pada listbox

Lebih jelasnya lihat file contoh yang saya lampirkan
Atas perhatian dan bantuannya, saya ucapkan banyak terimakasih
Wassalam,

Wed Apr 17, 2013 10:08 am (PDT) . Posted by:

"Mr. Kid" nmkid.family@ymail.com

if listbox.listindex&lt;>-1 then
range("a2:c2").offset(listbox.listindex).delete xlshiftup
endif

Wassalam,
Kid.

2013/4/17 lapendosol opik <lapendosol@yahoo.com>

> **
>
>
> Dear master excel,
> Saya membuat file excel yang berisi form, form berisi listbox.RowSource
> Saya ingin menghapus Range berdasarkan ListBox.ListIndex nya
> Sudah dicoba-coba tapi gagal terus, kode yang pengen saya masukkan:
> Range("A21:C21").Delete Shift:=xlUp
> Angka 21 dalam Range("A21:C21") dibuat dinamis sesuai listindex yang di
> klik pada listbox
>
> Lebih jelasnya lihat file contoh yang saya lampirkan
> Atas perhatian dan bantuannya, saya ucapkan banyak terimakasih
> Wassalam,
>
>
>

Wed Apr 17, 2013 10:29 am (PDT) . Posted by:

"Rahmat Hermawan" ione_1984

Assalamualaikum..

Terimakasih Mr. Kid atas pencerahannya...
Saya sudah memahami cara mengisi nilai dari cell excel ke field pada tabel di MySQL, tapi kok kebalikannya ga bisa ya? saya sudah mencoba script yang diberikan Mr. Kid dengan penyesuaian pada nama tabel dan nama fieldnya, tapi pada script "if rs.recordcount>0 then", selalu masuk ke "else" (selalu bernilai 0) padahal data di tabel MySQL ada.
Mungkin fokus permasalahannya saya tuangkan ke script VBA pada file excel yang saya lampirkan.

Pada file itu bila kita klik tombolnya akan selalu muncul pesan "data belum ada" yang menunjukkan data tidak ada sama sekali, apa ada yang salah pada script ini? database pada phpmyadmin saya print scrint dan saya lampirkan juga.
Mohon pencerahannya lagi Master...

Untuk koneksi database dengan komputer berbeda dalam 1 jaringan, setelah googling sana-sini sampe hampir stress, Alhamdulillah sudah berhasil.. hehehe..

Sekali lagi terima kasih yang sebesar-besarnya..
Wassalam.

________________________________
From: Mr. Kid <mr.nmkid@gmail.com>
To: BeExcel <belajar-excel@yahoogroups.com>
Sent: Sunday, April 14, 2013 10:30 PM
Subject: Re: [belajar-excel] excel dengan database mysql


 
Hai Rahmat,

1. Bagaimana sript vba untuk memasukkan ("C3").Value pada sheet1 ini,
kedalam field "alamat" pada database mysql. Kalau dengan database excel
sendiri kan script intinya Cuma : .Cells(baris, 2) = Sheet1.Range("C3").
(dalam file yang saya lampirkan).
>> Ya betul, untuk kegiatan di Excel dalam hal membaca suatu nilai range dan menulis ke range yang lain dapat berbentuk :
 Â Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚  .Cells(baris, 2).value = Sheet1.Range("C3").value
Sebelum proses tersebut, sepertinya ada proses pencarian data berdasar nama yang diinput dalam tabel data.

Jika ada namanya, maka dilakukan proses meng-update nilai lama yang ada dalam tabel data dengan nilai baru.

Jika tidak ada namanya, maka dilakukan proses menambah record baru dalam tabel data.

Proses ini berlaku dimana saja ketika berkegiatan meng-input data.

>> Begitu juga ketika akan melakukan kegiatan tersebut kedalam database yang tersimpan di database engine seperti MySQL.

Setelah Anda mendapatkan koneksi (dalam script Anda, koneksinya dimasukkan kedalam variabel conn), maka Anda perlu melakukan proses-proses seperti tadi. Berhubung bahasa komunikasi data adalah menggunakan SQL, maka dituntut untuk menguasai bahasa SQL (dasar-dasarnya bisa dipelajari disini).

Langkah pertama adalah mengetahui ada atau tidaknya record data berdasar nama tertentu. Berarti ada proses mengambil dataset dari MySQL database tersebut.

Jika dengan bantuan object data bernama ADO, maka kira-kira : (setelah proses koneksi conn berhasil)

dim rs as ADODB.recordset Â Ã‚  'deklarasi variabel dataset (recordset)

set rs=new adodb.recordset Â  'init recordset

'isi recordset dengan data dari sumber (MySQL hasil koneksi conn pada tabel tertentu -> query SELECT)

rs.open "SELECT alamat FROM nama_tabel WHERE nama='" & Sheet1.Range("C3").value & "'" , conn , adOpenKeyset

if rs.recordcount>0 then Â Ã‚ Ã‚  'cek ada recordnya atau tidak

 Â Ã‚ Ã‚  'ada recordnya, maka update isi kolom alamat saja (oleh sebab itu yang di-SELECT hanya kolom alamat saja)

 Â Ã‚ Ã‚  rs.movefirst Â Ã‚  'ke record pertama

 Â Ã‚ Ã‚  rs.fields("alamat").value = Sheet1.Range("C4").value

 Â Ã‚ Ã‚  rs.update

 Â Ã‚  'jika update data akan menggunakan query UPDATE melalui object conn bisa dengan script : (aktifkan script bila perlu)

 Â Ã‚  'conn.execute "UPDATE nama_tabel SET alamat='" & Sheet1.Range("C4").value & "' " & _

 Â Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚  "WHERE nama='" & Sheet1.Range("C3").value & "'"

else

 Â Ã‚  'tidak ada recordnya, maka akan tambah record baru (query INSERT INTO -> melalui object conn)

 Â Ã‚  conn.execute "INSERT INTO nama_tabel VALUES ( '" & _
 Â Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚  Sheet1.Range("C3").value & "','" & _
 Â Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚  Sheet1.Range("C4").value & "')"

endif

rs.close

conn.close

set rs=nothing
set conn=nothing

2. Aplikasi ini akan saya share sehingga bisa dibuka dari komputer mana
saja dan bersamaan dalam 1 jaringan lokal, tetapi karena variable
"Server" =  "localhost&quot;, maka akan eror pada saat dijalankan pada
komputer lain karena xampp (database) hanya di komputer dengan ip
192.168.0.1. Saya sudah mencoba merubah settingan pada odbc connector
dengan mengganti "TCP/IP server" nya dengan 192.168.0.1 tapi selalu
koneksi gagal, harus localhost baru bisa. Bagaimana caranya agar bila
dijalankan di komputer lain dalam 1 jaringan ?

>> Dalam hal kegiatan koneksi berbeda komputer dalam suatu jaringan (network), maka perlu diperhatikan tentang :

1. IPAddress server database jika koneksi melalui TCP/IP

2. Port milik server database

3. Ijin dari Operating System (Firewall dalam penggunaan Port)

4. bunyi kalimat ajakan berkoneksi (Connection String) -> untuk MySQL bisa dilihat disini bagian TCP/IP Port

5. komputer yang mengkoneksi memiliki (ter-install) library data privider (seperti MySQL melalui ODBC nya)

Setelah koneksi terbentuk dan stabil, maka kegiatan transaksi data bisa dilakukan menggunakan query seperti di atas tadi.

***
Oh iya, untuk komunikasi antara Excel dengan MySQL, hanya dibutuhkan :

1. Server database MySQL

2. library Data Provider seperti ODBC nya MySQL

3. MS ActiveX Data Object (ADO) jika ingin menggunakan ADO

Wassalam,
Kid.

2013/4/14 Rahmat Hermawan <ione_1984@yahoo.com>

> 
>Selamat malam para master excel, saya ingin bertanya :
>
>Saya mempunyai file excel yang saya buat sebagai aplikasi input data (sheet 1) dan sheet 2 sebagai databasenya menggunakan VBA excel.
>(file terlampir).
>
>Saya ingin mengganti penyimpanan databasenya tidak dengan excel lagi, tetapi dengan database mysql.
>Saya sudah menginstal xampp dan odbc connector, saya sudah berhasil menghubungkannya juga dengan script :
>
>
>Dim conn As New ADODB.Connection
>Set conn = New ADODB.Connection
>conn.Open "DRIVER={MySQL ODBC 5.2w Driver}" & _
>  ";SERVER= localhost" & _
>  ";database= database_ho" & _
>  ";user= root" & _
>  ";password=
ione123"
>
>
>Pertanyaannya :
>
>
>1. Bagaimana sript vba untuk memasukkan ("C3").Value pada sheet1 ini, kedalam field "alamat" pada database mysql. Kalau dengan database excel sendiri kan script intinya Cuma : .Cells(baris, 2) = Sheet1.Range("C3"). (dalam file yang saya lampirkan).
>
>
>2. Aplikasi ini akan saya share sehingga bisa dibuka dari komputer mana saja dan bersamaan dalam 1 jaringan lokal, tetapi karena variable "Server" =  "localhost&quot;, maka akan eror pada saat dijalankan pada komputer lain karena xampp (database) hanya di komputer dengan ip 192.168.0.1. Saya sudah mencoba merubah settingan pada odbc connector dengan mengganti "TCP/IP server" nya dengan 192.168.0.1 tapi selalu koneksi gagal, harus localhost baru bisa. Bagaimana caranya agar bila dijalankan di komputer lain dalam 1 jaringan ?
>
>
>
>Bagi master2 excel... Mohon pencerahannya....saya sudah googling kesana kemari tapi tidak ketemu... Sebelumnya terimakasih yang sebesar-besarnya....
>

Wed Apr 17, 2013 10:32 am (PDT) . Posted by:

"Mr. Kid" nmkid.family@ymail.com

Wa'alaikumussalam Wr. Wb.

Coba baris open recordset diubah menjadi :
rs.Open strsql, conn, adOpenKeyset, adLockOptimistic
kemudian query diubah menjadi :
SELECT pass FROM [user]

Wassalamu'alaikum Wr. Wb.
Kid.

2013/4/18 Rahmat Hermawan <ione_1984@yahoo.com>

> **
>
>
> Assalamualaikum..
>
> Terimakasih Mr. Kid atas pencerahannya...
> Saya sudah memahami cara mengisi nilai dari cell excel ke field pada tabel
> di MySQL, tapi kok kebalikannya ga bisa ya? saya sudah mencoba script yang
> diberikan Mr. Kid dengan penyesuaian pada nama tabel dan nama fieldnya,
> tapi pada script "if rs.recordcount>0 then", selalu masuk ke "else"
> (selalu bernilai 0) padahal data di tabel MySQL ada.
> Mungkin fokus permasalahannya saya tuangkan ke script VBA pada file excel
> yang saya lampirkan.
> Pada file itu bila kita klik tombolnya akan selalu muncul pesan "data
> belum ada" yang menunjukkan data tidak ada sama sekali, apa ada yang salah
> pada script ini? database pada phpmyadmin saya print scrint dan saya
> lampirkan juga.
>
> Mohon pencerahannya lagi Master...
>
> Untuk koneksi database dengan komputer berbeda dalam 1 jaringan, setelah
> googling sana-sini sampe hampir stress, Alhamdulillah sudah berhasil..
> hehehe..
>
> Sekali lagi terima kasih yang sebesar-besarnya..
> Wassalam.
> ------------------------------
> *From:* Mr. Kid <mr.nmkid@gmail.com>
> *To:* BeExcel <belajar-excel@yahoogroups.com>
> *Sent:* Sunday, April 14, 2013 10:30 PM
> *Subject:* Re: [belajar-excel] excel dengan database mysql
>
>
> Hai Rahmat,
>
> 1. Bagaimana sript vba untuk memasukkan ("C3").Value pada sheet1 ini,
> kedalam field "alamat" pada database mysql. Kalau dengan database excel
> sendiri kan script intinya Cuma : .Cells(baris, 2) = Sheet1.Range("C3").
> (dalam file yang saya lampirkan).
> >> Ya betul, untuk kegiatan di Excel dalam hal membaca suatu nilai range
> dan menulis ke range yang lain dapat berbentuk :
> .Cells(baris, 2).value = Sheet1.Range("C3").value
> Sebelum proses tersebut, sepertinya ada proses pencarian data berdasar
> nama yang diinput dalam tabel data.
> Jika ada namanya, maka dilakukan proses meng-update nilai lama yang ada
> dalam tabel data dengan nilai baru.
> Jika tidak ada namanya, maka dilakukan proses menambah record baru dalam
> tabel data.
> Proses ini berlaku dimana saja ketika berkegiatan meng-input data.
>
> >> Begitu juga ketika akan melakukan kegiatan tersebut kedalam database
> yang tersimpan di database engine seperti MySQL.
> Setelah Anda mendapatkan koneksi (dalam script Anda, koneksinya dimasukkan
> kedalam variabel conn), maka Anda perlu melakukan proses-proses seperti
> tadi. Berhubung bahasa komunikasi data adalah menggunakan SQL, maka
> dituntut untuk menguasai bahasa SQL (dasar-dasarnya bisa dipelajari disini<http://www.w3schools.com/sql/>
> ).
>
> Langkah pertama adalah mengetahui ada atau tidaknya record data berdasar
> nama tertentu. Berarti ada proses mengambil dataset dari MySQL database
> tersebut.
> Jika dengan bantuan object data bernama ADO, maka kira-kira : (setelah
> proses koneksi conn berhasil)
> dim rs as ADODB.recordset 'deklarasi variabel dataset (recordset)
> set rs=new adodb.recordset 'init recordset
> 'isi recordset dengan data dari sumber (MySQL hasil koneksi conn pada
> tabel tertentu -> query SELECT)
> rs.open "SELECT alamat FROM nama_tabel WHERE nama='" &
> Sheet1.Range("C3").value & "'" , conn , adOpenKeyset
> if rs.recordcount>0 then 'cek ada recordnya atau tidak
> 'ada recordnya, maka update isi kolom alamat saja (oleh sebab itu
> yang di-SELECT hanya kolom alamat saja)
> rs.movefirst 'ke record pertama
> rs.fields("alamat").value = Sheet1.Range("C4").value
> rs.update
>
> 'jika update data akan menggunakan query UPDATE melalui object conn
> bisa dengan script : (aktifkan script bila perlu)
> 'conn.execute "UPDATE nama_tabel SET alamat='" &
> Sheet1.Range("C4").value & "' " & _
> "WHERE nama='" & Sheet1.Range("C3").value & "'"
> else
> 'tidak ada recordnya, maka akan tambah record baru (query INSERT INTO
> -> melalui object conn)
> conn.execute "INSERT INTO nama_tabel VALUES ( '" & _
> Sheet1.Range("C3").value & "','" & _
> Sheet1.Range("C4").value & "')"
> endif
>
> rs.close
> conn.close
>
> set rs=nothing
> set conn=nothing
>
>
> 2. Aplikasi ini akan saya share sehingga bisa dibuka dari komputer mana
> saja dan bersamaan dalam 1 jaringan lokal, tetapi karena variable "Server"
> = "localhost&quot;, maka akan eror pada saat dijalankan pada komputer lain
> karena xampp (database) hanya di komputer dengan ip 192.168.0.1. Saya sudah
> mencoba merubah settingan pada odbc connector dengan mengganti "TCP/IP
> server" nya dengan 192.168.0.1 tapi selalu koneksi gagal, harus localhost
> baru bisa. Bagaimana caranya agar bila dijalankan di komputer lain dalam 1
> jaringan ?
> >> Dalam hal kegiatan koneksi berbeda komputer dalam suatu jaringan
> (network), maka perlu diperhatikan tentang :
> 1. IPAddress server database jika koneksi melalui TCP/IP
> 2. Port milik server database
> 3. Ijin dari Operating System (Firewall dalam penggunaan Port)
> 4. bunyi kalimat ajakan berkoneksi (Connection String) -> untuk MySQL
> bisa dilihat disini bagian TCP/IP Port<http://www.connectionstrings.com/mysql#mysql-connector-odbc-5-1>
> 5. komputer yang mengkoneksi memiliki (ter-install) library data privider
> (seperti MySQL melalui ODBC nya)
>
> Setelah koneksi terbentuk dan stabil, maka kegiatan transaksi data bisa
> dilakukan menggunakan query seperti di atas tadi.
>
> ***
> Oh iya, untuk komunikasi antara Excel dengan MySQL, hanya dibutuhkan :
> 1. Server database MySQL
> 2. library Data Provider seperti ODBC nya MySQL
> 3. MS ActiveX Data Object (ADO) jika ingin menggunakan ADO
>
> Wassalam,
> Kid.
>
>
>
>
>
> 2013/4/14 Rahmat Hermawan <ione_1984@yahoo.com>
>
> **
>
> Selamat malam para master excel, saya ingin bertanya :
>
> Saya mempunyai file excel yang saya buat sebagai aplikasi input data
> (sheet 1) dan sheet 2 sebagai databasenya menggunakan VBA excel.
> (file terlampir).
> Saya ingin mengganti penyimpanan databasenya tidak dengan excel lagi,
> tetapi dengan database mysql.
> Saya sudah menginstal xampp dan odbc connector, saya sudah berhasil
> menghubungkannya juga dengan script :
>
> Dim conn As New ADODB.Connection
> Set conn = New ADODB.Connection
> conn.Open "DRIVER={MySQL ODBC 5.2w Driver}" & _
> ";SERVER= localhost" & _
> ";database= database_ho" & _
> ";user= root" & _
> ";password= ione123"
>
> Pertanyaannya :
>
> 1. Bagaimana sript vba untuk memasukkan ("C3").Value pada sheet1 ini,
> kedalam field "alamat" pada database mysql. Kalau dengan database excel
> sendiri kan script intinya Cuma : .Cells(baris, 2) = Sheet1.Range("C3").
> (dalam file yang saya lampirkan).
>
> 2. Aplikasi ini akan saya share sehingga bisa dibuka dari komputer mana
> saja dan bersamaan dalam 1 jaringan lokal, tetapi karena variable "Server"
> = "localhost&quot;, maka akan eror pada saat dijalankan pada komputer lain
> karena xampp (database) hanya di komputer dengan ip 192.168.0.1. Saya sudah
> mencoba merubah settingan pada odbc connector dengan mengganti "TCP/IP
> server" nya dengan 192.168.0.1 tapi selalu koneksi gagal, harus localhost
> baru bisa. Bagaimana caranya agar bila dijalankan di komputer lain dalam 1
> jaringan ?
>
> Bagi master2 excel... Mohon pencerahannya....saya sudah googling kesana
> kemari tapi tidak ketemu... Sebelumnya terimakasih yang sebesar-besarnya....
>
>
>
>
>
>

Wed Apr 17, 2013 11:03 am (PDT) . Posted by:

"Rahmat Hermawan" ione_1984

dengan diberi [user] malah "ODBC Driver not supprt the requested properties" Master.. tapi sambil tak coba utak-atik deh..

Sebelumnya terimakasih banyak Mr. Kid.

Wassalamualaikum. Wr. Wb..

Wed Apr 17, 2013 11:11 am (PDT) . Posted by:

"Mr. Kid" nmkid.family@ymail.com

oh kalau gitu coba :
SELECT pass FROM `user`
karakter ` bisa ditemukan dibawah karakter tilde (~) yang tombolnya acap
kali ditemukan di sebelah kiri tombol angka 1 atau tombol tanda seru.

Wassaalamu&#39;alaikum Wr. Wb.
Kid.

On Thu, Apr 18, 2013 at 1:01 AM, Rahmat Hermawan <ione_1984@yahoo.com>wrote:

> **
>
>
> dengan diberi [user] malah "ODBC Driver not supprt the requested
> properties" Master.. tapi sambil tak coba utak-atik deh..
>
> Sebelumnya terimakasih banyak Mr. Kid.
>
> Wassalamualaikum. Wr. Wb..
>
>
>

Wed Apr 17, 2013 10:52 am (PDT) . Posted by:

"Jamil Makhmudin" jamil_kbm

Dear Pakar Excel

Assalamu'alaikum 

Tanya lagi.... Adakah rumus VBA yang fungsinya sama denga protect sheet????
jika ada bagaiman rumusnya??

Makasih sebelumnya

wassalam

Wed Apr 17, 2013 10:57 am (PDT) . Posted by:

"Mr. Kid" nmkid.family@ymail.com

Wa'alaikumussalam Wr. Wb.

Script VBA untuk memprotect sheet seperti menggunakan menu protect sheet :
sheets("nama sheet nya").protect "passwordnya&quot;

untuk unprotect sheet :
sheets("nama sheet nya").*un*protect "passwordnya&quot;

Sheet yang diproteksi melalui menu protect sheet maupun dengan script
proteksi di atas akan membatasi gerak VBA, sehingga setiap proses VBA
terhadap sheet tersebut membutuhkan proses unprotect sheet terlebih dahulu
kemudian diikuti proses VBA yang diinginkan dan diakhir dengan protect
sheet kembali.

Pada workbook yang membutuhkan VBA, agar VBA tetap leluasa terhadap sheet
yang ter-protect, maka lakukan selalu protect sheet menggunakan script :
sheets("nama sheet nya").protect "passwordnya&quot;, userinterfaceonly:=true

Wassalamu'alaikum Wr. Wb.
Kid.

2013/4/18 Jamil Makhmudin <jamil_kbm@yahoo.co.id>

> **
>
>
> Dear Pakar Excel
>
> Assalamu'alaikum
>
> Tanya lagi.... Adakah rumus VBA yang fungsinya sama denga protect sheet????
> jika ada bagaiman rumusnya??
>
> Makasih sebelumnya
>
> wassalam
>
>
>

Wed Apr 17, 2013 6:56 pm (PDT) . Posted by:

"agussantosardiansyah" agussantosardiansyah

Dear Mr Kid

Terima ksih banyak atas bantuannya....
Akhirnya problem solve
Formula yg anda berikan bisa diterapkan

Ini membuat sy semangat untuk lebih mendalami fungsi xl
Hal ini dikarenakan pekerjaan sy yg banyak bermain dengan angka

Sekali lagi terima kasih banyak

Ttd
Agus

--- In belajar-excel@yahoogroups.com, "Mr. Kid" <mr.nmkid@...> wrote:
>
> File terlampir.
>
> Wassalam,
> Kid.
>
>
>
> 2013/4/17 agussantosardiansyah <agussantosardiansyah@...>
>
> > **
> >
> >
> >
> > Dear all
> >
> > Mohon bantuannya untuk sy yg masi awam
> > Mis: pada tabel
> >
> > -2 -1 -0.5 0 0.5 1 2
> >
> > 100 55 50 45 0 -40 -45 -50
> > 200 44 40 35 0 -30 -35 -40
> > 300 33 30 25 0 -20 -25 -30
> > 400 22 20 15 0 -10 -15 -20
> > 500 11 10 5 0 -1 -5 -10
> > --------------------------------------
> >
> > 1. Jika pada daftar kolom pertama yg akan dicari : 200
> > Jika pada daftar baris pertama yg akan dicari : 0.5
> > Maka hasilnya akan menunjukkan :
> > -30
> >
> > 2. Jika pada daftar kolom pertama data yg akan di cari : 250
> > Dan pada daftar baris yg akan dicari: 0.9
> >
> > Mohon bantuannya dalam memasukkan rumus xl
> >
> > Sebelum dan sesudah kuucapkan terima kasih
> > Sent from Samsung Mobile
> >
> > Sent from Samsung Mobile
> >
> >
> >
>

Thu Apr 18, 2013 12:33 am (PDT) . Posted by:

"Fuadi Arief" see_fu

adakah cara untuk memasukkan formula or fungsi di tengah kalimat dalam satu
cell?

contoh terlampir

Thu Apr 18, 2013 12:44 am (PDT) . Posted by:

"Jan Raisin"

Coba cara berikut:

="disini_adalah_textnya&quot; & disini_adalah_fungsinya() & "
disini_adalah_text_berikutnya&quot;

>> text dan spasi selalu diapit dengan tanda kutip dua
>> sebagai penghubung digunakan tanda &

Wassalam,

-Miss Jan Raisin-

Pada 18 April 2013 10.07, Fuadi Arief <sifuad.xl@gmail.com> menulis:

> **
>
>
> adakah cara untuk memasukkan formula or fungsi di tengah kalimat dalam
> satu cell?
>
> contoh terlampir
>
>
>

Thu Apr 18, 2013 12:34 am (PDT) . Posted by:

iq_bal76id

Dear be exceler

Mohon pencerahan, formula yang bisa di gunakan untuk memisahkan kata dan kemudian meletakkan pada kolomnya menggunakan apa ya?

Terlampir contoh filenya.

 

 

Thanks'

Regard

Muhammad Iqbal


------Original Message------
From: iqbal
To: belajar-excel@yahoogroups.com
Subject: memisahkan kata dan meletakkan pada kolomnya
Sent: Apr 18, 2013 10:28

Dear be exceler
Mohon pencerahan, formula yang bisa di gunakan untuk memisahkan kata dan kemudian meletakkan pada kolomnya menggunakan apa ya?
Terlampir contoh filenya.
 
 
Thanks'
Regard
Muhammad Iqbal


Sent from my AXIS Worry Free BlackBerry® smartphone

Thu Apr 18, 2013 12:42 am (PDT) . Posted by:

"Anggraini Hapsari" anggrainihapsari@ymail.com

be exceller 
maaf kalau salah sebut..
sy punya contoh kasus seperti pada lampiran berikut.
dimana jika saya memilih kriteria yang sudah berupa list maka akan muncul nilai secara otomatis.
dan bagaimana cara membuat listnya....
orang yang mengerjakan data ini sudah pindah kantor jadi agak susah untuk bertanya secara langsung pada yang bersangkutan.
terima kasih penjelasannya 
GROUP FOOTER MESSAGE
---------------------------------------------------------------------
bergabung ke milis (subscribe), kirim mail kosong ke:
belajar-excel-subscribe@yahoogroups.com

posting ke milis, kirimkan ke:
belajar-excel@yahoogroups.com

berkunjung ke web milis
http://tech.groups.yahoo.com/group/belajar-excel/messages

melihat file archive / mendownload lampiran
http://www.mail-archive.com/belajar-excel@yahoogroups.com/
atau (sejak 25-Apr-2011) bisa juga di :
http://milis-belajar-excel.1048464.n5.nabble.com/

menghubungi moderators & owners: belajar-excel-owner@yahoogroups.com

keluar dari membership milis (UnSubscribe):
kirim mail kosong ke  belajar-excel-unsubscribe@yahoogroups.com
---------------------------------------------------------------------

Tidak ada komentar:

Posting Komentar