Coba script event change : (textbox bernama textbox1)
Dim sText As String, sDec As String, sRibu As String
sRibu = Mid$(Format$(1000, "#,###"), 2, 1)
sDec = Mid$(Format$(0, "0.0"), 2, 1)
sText = Replace$(Replace$(TextBox1.Text, sRibu, vbNullString), sDec,
vbNullString)
TextBox1.Text = Format$(CLng(sText), "00""" & sDec & """00")
Wassalam,
Kid.
2013/2/15 Eko NS <[email protected]>
> **
>
>
> blm berhasil dg problem sama mas.
>
>
> 2013/2/15 Mr. Kid <[email protected]>
>
> **
>>
>>
>> ganti baris :
>>
>> sText = Replace$(sText, Mid$(Format$(0#, "0.0"), 2, 1), ".")
>>
>> menjadi :
>> sText = Replace$(sText, Mid$(Format$(0, "0.0"), 2, 1), ".")
>>
>>
>> Wassalam,
>> Kid.
>>
>> 2013/2/15 Eko NS <[email protected]>
>>
>>> **
>>>
>>>
>>> maksud hati memang hendak menulis untuk besaran suku bunga, jadi memang
>>> dibutuhkan dua digit koma dua digit saja, misal 12,25.
>>> formula sudah sy coba & tidak jalan di baris ke-4 (mark with >)
>>>
>>> Dim sText As String
>>> sText = Replace$(bunga.Text, Mid$(Format$(1000, "#,###"), 2, 1),
>>> vbNullString)
>>> sText = Replace$(sText, Mid$(Format$(0#, "0.0"), 2, 1), ".")
>>> > bunga.Text = CStr(Format$(CDec(sText), "00.00"))
>>>
>>>
>>> 2013/2/15 Mr. Kid <[email protected]>
>>>
>>> **
>>>>
>>>>
>>>> Misal textboxnya bernama textbox1, coba event change diganti dengan :
>>>> Dim sText As String
>>>> sText = Replace$(TextBox1.Text, Mid$(Format$(1000, "#,###"), 2, 1),
>>>> vbNullString)
>>>> sText = Replace$(sText, Mid$(Format$(0#, "0.0"), 2, 1), ".")
>>>> TextBox1.Text = CStr(Format$(CDec(sText), "00.00"))
>>>>
>>>> Jadi semua itu permasalahan regional setting.
>>>> Script selalu menggunakan pemisah desimal berupa karakter titik.
>>>> Jadi semua inputan desimal harus diubah menjadi berkarakter titik.
>>>> Tentu saja pemisah ribuan harus dihilangkan lebih dulu.
>>>>
>>>>
>>>> Wassalam,
>>>> Kid.
>>>>
>>>> 2013/2/15 Eko NS <[email protected]>
>>>>
>>>>> **
>>>>>
>>>>>
>>>>> sy sudah coba tp blm berhasil.
>>>>> ketika menggunakan ##.## ketika input data hasilnya 1 digit angka di
>>>>> depan koma, misal input 12,35 >> 1,23
>>>>> ketika menggunakan 00.00 ketika input data 01,00 dan ga bisa di apa2in
>>>>> lagi
>>>>> ketika menggunakan ##.00 ketika input data 1,00 dan ga bisa di apa2in
>>>>> lagi
>>>>>
>>>>> pls help
>>>>>
>>>>>
>>>>> 2013/2/15 Mr. Kid <[email protected]>
>>>>>
>>>>> **
>>>>>>
>>>>>>
>>>>>> Inputnya mungkin ada spasinya.
>>>>>>
>>>>>> coba ubah script menjadi :
>>>>>> Private Sub jth_tempo_Change()
>>>>>> Dim lChar As Long
>>>>>> Dim sText As String
>>>>>> on error goto keluar
>>>>>> sText = CStr(CLng(Replace$(jth_tempo.Text, "-", vbNullString)))
>>>>>> lChar = Len(sText)
>>>>>> Select Case lChar
>>>>>> Case 5, 6
>>>>>> sText = Left$(sText, 4) & "-" & Mid$(sText, 5, 2)
>>>>>> If Not IsDate(sText & "-01") And lChar = 6 Then
>>>>>> jth_tempo.Text = Left$(sText, 6)
>>>>>> Else
>>>>>> jth_tempo.Text = sText
>>>>>> End If
>>>>>> Case 7, 8
>>>>>> sText = Left$(sText, 4) & "-" & Mid$(sText, 5, 2) & "-" &
>>>>>> Mid$(sText, 7, 2)
>>>>>> If Not IsDate(sText) And lChar = 8 Then
>>>>>> jth_tempo.Text = Left$(sText, 9)
>>>>>> Else
>>>>>> jth_tempo.Text = sText
>>>>>> End If
>>>>>> End Select
>>>>>> keluar:
>>>>>> err.clear
>>>>>> on error goto 0
>>>>>> End Sub
>>>>>>
>>>>>> >> Format number :
>>>>>> # mewakili sebuah angka bukan nol
>>>>>> 0 mewakili sebuah angka
>>>>>> Jika ingin selalu tampil apa adanya (0 ya ditulis 0) gunakan karakter
>>>>>> 0 daripada #
>>>>>> Atur dan pilih akan diletakkan dimana si karakter 0 dan dimana yang
>>>>>> #. Atau malah semua 0 atau semua #
>>>>>> Contoh :
>>>>>> di format 00.00 akan selalu tampil minimal 2 digit didepan koma dan 2
>>>>>> digit dibelakang koma
>>>>>>
>>>>>> Wassalam,
>>>>>> Kid.
>>>>>>
>>>>>>
>>>>>> 2013/2/15 Eko NS <[email protected]>
>>>>>>
>>>>>>> **
>>>>>>>
>>>>>>>
>>>>>>> saya sudah coba mr. Kid, tp debug di baris ke-3 (mark with >).
>>>>>>> FYI control textbox bernama jth_tempo, jadi saya modif mjd spt ini
>>>>>>>
>>>>>>> Private Sub jth_tempo_Change()
>>>>>>> Dim lChar As Long
>>>>>>> Dim sText As String
>>>>>>>
>>>>>>> > sText = CStr(CLng(Replace$(jth_tempo.Text, "-", vbNullString)))
>>>>>>> lChar = Len(sText)
>>>>>>> Select Case lChar
>>>>>>> Case 5, 6
>>>>>>> sText = Left$(sText, 4) & "-" & Mid$(sText, 5, 2)
>>>>>>> If Not IsDate(sText & "-01") And lChar = 6 Then
>>>>>>> jth_tempo.Text = Left$(sText, 6)
>>>>>>> Else
>>>>>>> jth_tempo.Text = sText
>>>>>>> End If
>>>>>>> Case 7, 8
>>>>>>> sText = Left$(sText, 4) & "-" & Mid$(sText, 5, 2) & "-" &
>>>>>>> Mid$(sText, 7, 2)
>>>>>>> If Not IsDate(sText) And lChar = 8 Then
>>>>>>> jth_tempo.Text = Left$(sText, 9)
>>>>>>> Else
>>>>>>> jth_tempo.Text = sText
>>>>>>> End If
>>>>>>> End Select
>>>>>>> End Sub
>>>>>>>
>>>>>>> kira2 apanya yg salah ya?
>>>>>>>
>>>>>>>
>>>>>>> 2013/2/15 Mr. Kid <[email protected]>
>>>>>>>
>>>>>>> **
>>>>>>>>
>>>>>>>>
>>>>>>>> Untuk yang date.
>>>>>>>> Syaratnya, input dalam format YYYYMMDD :: 4 digit tahun diikuti 2
>>>>>>>> digit bulan dan diakhiri 2 digit tanggal (total input = 8 digit selalu)
>>>>>>>> Dipilih format input ini agar tidak terbentur masalah regional
>>>>>>>> setting komputer yang bisa jadi berbeda antar komputernya.
>>>>>>>>
>>>>>>>> Misal nama control textbox adalah txtTgl
>>>>>>>> Pada event change txtTgl diberi script :
>>>>>>>> Dim lChar As Long
>>>>>>>> Dim sText As String
>>>>>>>>
>>>>>>>> sText = CStr(CLng(Replace$(txtTgl.Text, "-", vbNullString)))
>>>>>>>> lChar = Len(sText)
>>>>>>>> Select Case lChar
>>>>>>>> Case 5, 6
>>>>>>>> sText = Left$(sText, 4) & "-" & Mid$(sText, 5, 2)
>>>>>>>> If Not IsDate(sText & "-01") And lChar = 6 Then
>>>>>>>> txtTgl.Text = Left$(sText, 6)
>>>>>>>> Else
>>>>>>>> txtTgl.Text = sText
>>>>>>>> End If
>>>>>>>> Case 7, 8
>>>>>>>> sText = Left$(sText, 4) & "-" & Mid$(sText, 5, 2) & "-" &
>>>>>>>> Mid$(sText, 7, 2)
>>>>>>>> If Not IsDate(sText) And lChar = 8 Then
>>>>>>>> txtTgl.Text = Left$(sText, 9)
>>>>>>>> Else
>>>>>>>> txtTgl.Text = sText
>>>>>>>> End If
>>>>>>>> End Select
>>>>>>>>
>>>>>>>> Wassalam,
>>>>>>>> Kid.
>>>>>>>>
>>>>>>>> 2013/2/15 Eko NS <[email protected]>
>>>>>>>>
>>>>>>>>> **
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> misi para mastah excel,
>>>>>>>>>
>>>>>>>>> ane ada sedikit kesulitan dalam pembuatan makro & ingin bantuan
>>>>>>>>> dari para mastah.
>>>>>>>>>
>>>>>>>>> dalam userform ane ingin ketika input data angka akan secara
>>>>>>>>> otomatis tampil dengan pemisah titik (.) dan untuk tanggal terpisahkan
>>>>>>>>> dengan strip (-) antara tanggal, bulan & tahun.
>>>>>>>>> maksud ane tampilan tersebut langsung dapat terlihat ketika isi
>>>>>>>>> userform, bukan pada tabel hasilnya.
>>>>>>>>>
>>>>>>>>> terima kasih.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> _
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> * * Eko Nur Subagyo*
>>>>>>> *
>>>>>>> *
>>>>>>> * Subdit Pinjaman Daerah*
>>>>>>> * Ditjen Perimbangan Keuangan - Kemenkeu*
>>>>>>> * Jl. DR. Wahidin No. 1 Jakarta*
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> * * Eko Nur Subagyo*
>>>>> *
>>>>> *
>>>>> * Subdit Pinjaman Daerah*
>>>>> * Ditjen Perimbangan Keuangan - Kemenkeu*
>>>>> * Jl. DR. Wahidin No. 1 Jakarta*
>>>>>
>>>>>
>>>>
>>>
>>>
>>> --
>>> * * Eko Nur Subagyo*
>>> *
>>> *
>>> * Subdit Pinjaman Daerah*
>>> * Ditjen Perimbangan Keuangan - Kemenkeu*
>>> * Jl. DR. Wahidin No. 1 Jakarta*
>>>
>>>
>>
>
>
> --
> * * Eko Nur Subagyo*
> *
> *
> * Subdit Pinjaman Daerah*
> * Ditjen Perimbangan Keuangan - Kemenkeu*
> * Jl. DR. Wahidin No. 1 Jakarta*
>
>
>