Oh yang file kemarin gak bisa dipakai ya jika ada bunyi beep keluar ? Wassalam, Kid.
2012/9/30 Kurei recca <[email protected]> > ** > > > Dear Mr Kid, > > Saya sudah coba tapi saya ingin bertanya beberapa hal lagi nih pak > > Bisa ga ketika macronya jalan, excel tetap dapat berfungsi seperti biasa ? > > Misal ketika bunyi beep itu keluar saya tetap dapat melakukan aktivitas di > workbook tersebut ? > > Thx pak > > ------------------------------ > *Dari:* Kurei recca <[email protected]> > *Kepada:* "[email protected]" <[email protected]> > *Dikirim:* Minggu, 23 September 2012 13:59 > *Judul:* Bls: [belajar-excel] CODING MACRO BUNYI BEEP > > Makasih Mr Kid, > > dicoba dulu yaa,, > > thx yaa > ------------------------------ > *Dari:* Kid Mr. <[email protected]> > *Kepada:* [email protected] > *Dikirim:* Minggu, 23 September 2012 13:37 > *Judul:* Re: [belajar-excel] CODING MACRO BUNYI BEEP > > > Hai Recca, > > File terlampir berisi UDF SoundWarning yang tugasnya hanya membunyikan > file wav dengan kriteria tertentu. Mungkin kestabilannya masih harus diuji, > karena hanya rewrite dari bahasa C++ ke VBA. Kalau yang ke VB6 bisa lebih > stabil. > > Untuk mewarnai blinking, diatur melalui application.timer secara tidak > langsung. Jadi, application.timer pada file terlampir hanya mengubah suatu > nilai konstanta secara terus menerus dari 1 menjadi 2. Ketika > application.timer dihentikan, maka nilai konstanta diset menjadi 0. Setiap > kali buka workbook, set pertama saat open selalu nilai konstanta bernilai > 1. Nilai konstanta ini disimpan dalam sebuah nama range bernama > '_MyTrigger_' > Nilai dalam _MyTrigger_ lah yang menjadi nilai kondisi dalam Conditional > Formatting (CF). Jadi blinking sebenarnya dilakukan oleh si CF karena ada > pengubahan nilai _MyTrigger_ oleh application.timer. > > Jadi nanti kalau ada yang gak stabil, coba perhatikan betul, sisi > blinking-nya ada sisi sound-nya. > > Berikut gambaran tentang UDF SoundWarning > UDF SoundWarning > > > > > > > > > > Syntax =SoundWarning( kriteria_mulai_warning , [pesan_warning] , > [filefullname_suara_peringatan] ) > > > > > kriteria_mulai_warning diisi nilai numerik, yang bisa berupa hasil > komputasi ekspresi tertentu > > > > > jika nilainya <= 0, maka SoundWarning akan menghentikan bunyi > > > > > jika nilainya > 0, maka SoundWarning akan memulai bunyi peringatan > > > > [pesan_warning] teks yang akan ditampilkan ke user yang menjadi nilai > hasil UDF ini ketika kriteria_mulai_warning bernilai >0. > > teks bisa berupa hasil komputasi ekspresi tertentu > > > > > > [filefullname_suara_peringatan] nama file suara yang akan dijadikan nada > peringatan. > > > > > > nama file harus tertulis lengkap beserta drive dan foldernya > > > > > > bila file tidak ditentukan user atau file dari user tidak ditemukan, maka > file default C:\Windows\Media\notify.wav akan dimainkan. > > jika file tidak ditemukan, maka tidak ada suara peringatan yang dimainkan > > > > > > > > > > > > > > > Result Jika nilai kriteria_mulai_warning bernilai >0, maka file suara > akan dieksekusi menjadi suara peringatan disertai pesan teks dalam > [pesan_warning] > Jika nilai kriteria_mulai_warning bernilai <=0, maka suara peringatan > dihentikan dan tidak ada pesan teks yang ditampilkan > > > > > > > > > > > > > Contoh pemakaian : > > > > > > > > > > > =SoundWarning( 1*(B3="a") , "Cell B3 tidak boleh 'a'" ) > > > > > > > > > Mainkan file default ketika isi cell B3 adalah teks 'a' (b3="a") > > > > > > kemudian dikonversi menjadi nilai (1*) dan tampilkan pesan berbunyi : Cell > B3 tidak boleh 'a' > > > > > > > > > > > > > > =SoundWarning( 1*(B3="a") , "Cell B3 tidak boleh 'a'" , > "C:\Windows\Media\chord.wav" ) > > > > > > Mainkan file bernama chord.wav yang ada di C:\Windows\Media\ ketika isi > cell B3 adalah teks 'a' (b3="a") > > kemudian dikonversi menjadi nilai (1*) dan tampilkan pesan berbunyi : Cell > B3 tidak boleh 'a' > > > > > > > > > > > > > Peringatan !!! > > > > > > > > > > 1 Pastikan pada event workbook before close, baris terakhir sebelum End > Sub diberi kode untuk menghentikan sound sebagai berikut : > PlaySound vbnullstring,0,9 > > > > > > > > > > > > > > > > > > > > > 2 Pada pengembangan untuk memasukkan UDF SoundWarning menjadi sebuah > AddIn, sertai dengan class pengatur Workbook agar setiap workbook yang > ditutup menjalankan > PlaySound vbnullstring,0,9 > > > > > > > > > > kemudian pada file addin dilanjutkan dengan proses application.calculate > untuk memicu UDF SoundWarning pada workbook yang belum tertutup > > > > > > > > > > > > 3 Yang dimainkan biasanya file pertama yang dijumpai, tetapi hal ini > masih belum stabil. Mungkin harus pakai midi supaya bisa bareng semua > dimainkan dan biar ribut seperti pasar :D > VBA Code untuk UDF SoundWarning : > Public Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" ( _ > ByVal lpszName As String, ByVal hModule As Long, ByVal > dwFlags As Long) As Long > > Public sAddr As String > > 'Kid,Jakarta, 2007-01-05,rewrite for VB6 and VBA > 'SoundWarning : mengeksekusi file .wav dengan suatu kondisi tertentu dan > memberi return value teks > 'butuh WinAPI function PlaySound pada winmm.dll > Public Function SoundWarning(lStartPeringatan As Long, _ > Optional sWarning As String = "nah lo... ada yang gak > pas", _ > Optional sFileName As String = vbNullString) As String > Dim sFile As String, sCallerAddr As String > > Application.Volatile > If LenB(sFileName) = 0 Then > sFile = "C:\Windows\Media\notify.wav" > ElseIf LenB(Dir$(sFileName)) = 0 Then > sFile = "C:\Windows\Media\notify.wav" > Else > sFile = sFileName > End If > > sCallerAddr = Application.Caller.Address & "|" > If lStartPeringatan < 1 Then > sAddr = Replace$(sAddr, sCallerAddr, vbNullString) > If LenB(sAddr) = 0 Then > PlaySound vbNullString, 0, 9 > End If > SoundWarning = vbNullString > Else > If InStr(sAddr, sCallerAddr) = 0 Then > sAddr = sAddr & sCallerAddr > End If > PlaySound sFile, 0, 9 > SoundWarning = sWarning > End If > End Function > > > Module yang mengatur nilai dalam nama range _MyTrigger_ : > Public lTimer As Long > > Public Sub MyTrigger() > Select Case lTimer > Case 0 > Application.OnTime EarliestTime:=Now + TimeValue("00:00:01"), _ > Procedure:="MyTrigger" > StopMyTrigger > Case 1, 2 > lTimer = 2 + (lTimer = 2) > ThisWorkbook.Names("_MyTrigger_").Value = lTimer > Application.OnTime EarliestTime:=Now + TimeValue("00:00:01"), _ > Procedure:="MyTrigger" > End Select > End Sub > > Public Sub StopMyTrigger() > Application.OnTime EarliestTime:=Now + TimeValue("00:00:01"), _ > Procedure:="MyTrigger", _ > Schedule:=False > End Sub > > Pengaturan saat open workbook : > Private Sub Workbook_Open() > lTimer = 1 > ThisWorkbook.Names("_MyTrigger_").Value = lTimer > MyTrigger > End Sub > > Pengaturan saat workbook akan di close (before close) > Private Sub Workbook_BeforeClose(Cancel As Boolean) > lTimer = 0 > ThisWorkbook.Names("_MyTrigger_").Value = lTimer > MyTrigger > > PlaySound vbNullString, 0, 9 > End Sub > > Moga-moga gak bikin crash ya... > > Wassalam, > Kid. > > > 2012/9/23 Kurei recca <[email protected]> > > ** > > Salam Para Master Excel, > > Ceritanya saya ingin membuat suatu coding dengan kondisi Jika Cell A1 > bertuliskan kata "TRUE" maka akan ada bunyi beep berulang selama 20 detik > or periode tertentu dan Cell Tersebut kelap kelip berwarna kuning dan putih > selama 20 detik tersebut. > > Kira2 bagaimana ya codingnya,,? > > Mohon Pencerahannya... > > Best Regards > > > > > > > > >

