Benar. Tand upperstrop ('), apabila di eksekusi di VBA bisa menyebabkan error. Karena tanda ' masalah ke dalam salah satu bahasa bawaan VBA. Karena itulah, kita harus menghandelnya.
Salah satunya bisa dengan mengubah record yang kita perkirakan memiliki tanda ' dengan menggunakan fungsi yang diletakkan di Module )agar bisa diakses oleh tiap form):
Public Function EscapeQuotes(s As String) As String
If s = "" Then
EscapeQuotes = ""
ElseIf Left(s, 1) = "'" Then
EscapeQuotes = "''" & EscapeQuotes(Mid(s, 2))
Else
EscapeQuotes = Left(s, 1) & EscapeQuotes(Mid(s, 2))
End If
End Function
Contoh penggunaan:
Set rs = CurrentDb.OpenRecordset("select *" _
& " from t1 where a like '*" & EscapeQuotes(Text0.Text) _
& "*' order by a asc")
Terlampir adalah contoh mdb 2003, yang merubah tanda upperstroup menjadi aman untuk dieksekusi oleh sql/VBA.
Semoga bisa membantu dan memberi semangat.
Hariyanto (Surabaya)
--------------------------------------------
On Thu, 9/1/14, tasurun@gmail.com <tasurun@gmail.com> wrote:
Subject: [belajar-access] RE: Progress Bar
To: belajar-access@yahoogroups.com
Date: Thursday, 9 January, 2014, 10:20 PM
luar biasa pak Hariyanto
Semoga
Tuhan membalas kebaikan bpk.
tambahan
dikit pak, bagaimana caranya spy nama dan alamat yang
mengandung karakter '
contoh
nama MA'RUF
contoh
alamatnya MELO'AN RT 004 RW 002 SIDOREJO JABUNGbisa
ikut terdeteksi
soalnya
pas baca record yg mengandung karakter di atas jadi
error.
Jazakumullah
Terima
kasih
| Reply via web post | Reply to sender | Reply to group | Start a New Topic | Messages in this topic (45) |
Tidak ada komentar:
Posting Komentar