Pak Kid.
file nya ada beberapa macam .
Ringkasan Saham(10 Oktober 2014).xls
OHLC-2014-08-15.xls
saya hendak mengambil tgl nya .
Dim bResult As Boolean ' sebelum nya saya pakai variant,
long dll nga bisa juga
path = ActiveWorkbook.path
flnm = ActiveWorkbook.Name
With Application.WorksheetFunction
If bResult = IsError(.Find("(", flnm, 1)) Then
MsgBox "berhasil"
ElseIf bResult = IsError(.Find("-", flnm, 1)) Then
MsgBox "berhasil 1"
End If
End With
disitu saya gagal terus .
Karena nga bisa jadinya seperti ini :
With Application.WorksheetFunction
On Error GoTo Pesan1
If bResult = IsError(.Find("(", flnm, 1)) Then
MsgBox "berhasil 1"
End If
Pesan1:
On Error GoTo Pesan2
If bResult = IsError(.Find("-", flnm, 1)) Then
MsgBox "berhasil 2"
End If
Pesan2:
End With
Salam
Lukman
2014-10-10 16:58 GMT+07:00 'Mr. Kid' [email protected] [belajar-excel] <
[email protected]>:
>
>
> Hai Lukman,
>
> Untuk formula sederhana seperti contoh tersebut, biasanya dibiarkan
> dipasang dalam cells saja. Menghitung dengan perintah VBA jauh lebih lambat
> dibanding dibiarkan berada dalam cells dan lebih ribet mengubah-ubahnya.
> Hasil dari kalkulasi formula dalam cell yang digunakan oleh VBA. Metode ini
> jauh lebih efisien untuk berbagai jumlah record data yang akan diproses.
> Terkadang muncul ketidak efisienan ketika ada formula proses yang tidak
> sederhana atau menggunakan fungsi volatile dalam formula.
>
> otherwise...
> Ketika ingin semuanya di-VBA-ken, banyak pilihan dalam memanfaatkan
> formula melalui VBA.
> Antara lain : =ISERROR(MATCH("Ticker";A1:K1;0))
> 1. WorksheetFunction :
> dim bResult as boolean
> with application.worksheetfunction
> bresult=.iserror( .match( "Ticker" , A1:K1 ,0 ) )
> end with
>
> 2. Evaluate :
> dim bResult as boolean
> bresult =evaluate( "=ISERROR(MATCH(""Ticker"";A1:K1;0))" )
>
> 3. Pasang formula ke cell lalu di values
> application.calculation=xlcalculationautomatic
> with sheets("nama sheet hasil").range("alamat cell hasil")
> .formula="=ISERROR(MATCH(""Ticker"";A1:K1;0))"
> .value=.value
> end with
>
> 4. Loop (jika data yang diproses sedikit [kurang dari 50K loop], akan
> lebih cepat dari 3 cara di atas)
> dim lCells as long, bResult as boolean
> with range("a1:k1")
> for lcells=1 to .cells.count
> if .cells( lcells ).value<>"Ticker" then
> bresult=true
> exit for
> endif
> next lcells
> end with
>
> Wassalam,
> Kid.
>
>
>
> On Fri, Oct 10, 2014 at 3:54 PM, lkm jktind [email protected]
> [belajar-excel] <[email protected]> wrote:
>
>>
>>
>> Tanya :
>>
>> Kalau Di worksheet :
>> =ISERROR(MATCH("Ticker";A1:K1;0))
>> =ISERROR(MATCH("Low";A1:K1;0))
>> =ISERROR(FIND("(";C14;1))
>> =ISERROR(FIND("H";C14;1))
>>
>> Kalau di VBA harus pakai apa ?
>>
>> Salam
>>
>> Lukman
>>
>>
>
>