@Mr. Zam,
daripada berurusan dengan error message yang memang harus hati-hati, selama
bisa menggunakan fungsi yang jarang menghasilkan error message.

jadi baris kode untuk hal itu, menjadi 2 baris saja :

strCurrent = OrderTable(EdRecNo, 17)
strCurrent = trim$(mid$(strCurrent, instr(1, strCurrent, ";") +1 ,
len(strCurrent ) +1))

tapi, jika strCurrent (yang jadi strRemark -- hasil proses) akan ditulis ke
cell, tetap gunakan
OrderTable(EdRecNo, 17)=strcurrent

jangan langsung :
OrderTable(EdRecNo, 17) = trim$(mid$(strCurrent, instr(1, strCurrent, ";")
+1 , len(strCurrent ) +1))


@mbak Siti
di xl2007, dengan 1 baris On Error Resume Next bisa (tidak perlu 2).
dari sifat trap error dengan on error, maka baris
                i = WorksheetFunction.Find("ada", "di jakarta")
akan dilewati jika menghasilkan error (i tidak akan diperbarui nilainya).

jadi, jika dalam sebuah loop, i akan bernilai hasil proses loop terakhir
yang tidak menghasilkan error.

biasanya, kalau hasil i yang sangat dibutuhkan untuk proses selanjutnya pada
loop tersebut juga, disertai baris pengisi nilai default yang dipakai :

i = WorksheetFunction.Find("ada", "di jakarta")
*if err.number<>0 then
      i=2009       'misal jika i hasilnya error, set jadi nilai default,
yaitu butuhnya 2009*
*      err.clear*
*end if*
msgbox i

Tapi ndak tahu dengan xl2003 dan sebelumnya.
Kid.

2009/11/12 siti Vi <[email protected]>

>
>
> 
> kalau bisa (menghilangkan timbulnya error message)
> terus fungsi itu menghasilkan data apa ?
>
> misal  (mohon dicoba di pc pak wahyu)
>
> Sub coba1()
> Dim i As Integer
> On Error Resume Next
> On Error Resume Next
> i = WorksheetFunction.Find("ada", "di jakarta")
> MsgBox i
> End Sub
>
> Sub coba2()
> Dim i As Integer
> ' On Error Resume Next
> i = WorksheetFunction.Find("ada", "berada di jakarta")
> MsgBox i
> End Sub
> pada sat sub coba1 dijalankan
> msgbox menghasilkan apa ??
>
> (sayangnya apa yg dikatakan "BISA mbak" itu codingnya seperti apa
> kok ndak di tulis kemaree..)
>
>
>
> ----- Original Message -----
> *From:* wahyu abdi <[email protected]>
> *To:* [email protected]
> *Sent:* Wednesday, November 11, 2009 7:01 PM
> *Subject:* Re: [belajar-excel] menghindari program berhenti...
>
>   Bisa Mbak, saya pakai Excel 2007, dengan cara yang agak aneh "on error
> resume next" nya saya ketik dua baris (mulanya iseng doang, tapi berhasil
> tuh), tadinya satu baris masih error mulu, kenapa ya?
>
> --- On *Wed, 11/11/09, siti Vi <[email protected]>* wrote:
>
>
> From: siti Vi <[email protected]>
> Subject: Re: [belajar-excel] menghindari program berhenti...
> To: [email protected]
> Date: Wednesday, November 11, 2009, 6:22 AM
>
>
> 
> *oh bisa to ?*
> (apa sudah di praktekkan ??)
>
> kalau di pc ku, dari dulu  worksheetfunction. find jika diaplikasikan di
> vba,
> kalau tidak menemukan substring yg dicari tentu menimbulkan error message
> *walaupun sudah didahului instruksi :
> On Error Resume Next*
>
> atau mungkin pc / excel saya yg tidak standar ya...
>
>
>
> ----- Original Message -----
> From: Puthut Wibowo
> To: belajar-excel@ yahoogroups. com
> Sent: Wednesday, November 11, 2009 5:18 PM
> Subject: Re: [belajar-excel] menghindari program berhenti...
>
>
> *Tambahin :
>
> On Error Resume Next
> *strCurrent = OrderTable(EdRecNo, 17)
>         i = Application. WorksheetFunctio n.Find("; ", strCurrent)
>         strReplaced =
> Application. WorksheetFunctio n.Replace( Arg1:=strCurrent , Arg2:=1,
> Arg3:=i, Arg4:="")
>         TxtRemark = Application. WorksheetFunctio n.Trim(strReplac ed)
>
>  ............
>
>
> --- On Wed, 11/11/09, Ahmad Zamroni <ahza...@gmail. com> wrote:
>
> From: Ahmad Zamroni <ahza...@gmail. com>
> Subject: [belajar-excel] menghindari program berhenti...
> To: "belajar-excel" <belajar-excel@ yahoogroups. com>
> Date: Wednesday, November 11, 2009, 2:40 PM
>
> Dear pakar macro,
>
> Gimana caranya menkondisikan baris perintah berikut agar tidak timbul
> error jika dari cell yang aktif tidak ditemukan yang dimaui, baik itu
> karena cell kosong atau tidak ada karakter “;”?
>
>         strCurrent = OrderTable(EdRecNo, 17)
>         i = Application. WorksheetFunctio n.Find("; ", strCurrent)
>         strReplaced =
> Application. WorksheetFunctio n.Replace( Arg1:=strCurrent , Arg2:=1,
> Arg3:=i, Arg4:="")
>         TxtRemark = Application. WorksheetFunctio n.Trim(strReplac ed)
>
>
> -zam-
>
>
>
>
>  
>

Kirim email ke