Kira-kira ada yang bersedia mencoba komputasi floating point tersebut di : 1. komputer 32Bit dengan aplikasi yang 32 Bit 2. komputer 64Bit dengan aplikasi yang 32 Bit 3. komputer 64Bit dengan aplikasi yang 64 Bit
Jangan-jangan, Excel 2007 SP3 yang 32Bit akan menghasilkan beda ketika kerja di komputer 32Bit vs 64Bit. Wassalam, Kid. 2013/6/25 summonery <summon...@yahoo.com> > ** > > > Sepertinya yang sedang kita hadapi adalah sebuah hasil pengolahan floating > point number yang berujung pada hasil yang juga merupakan floating point > number. > Salah satu prinsip dasar yang perlu kita pegang terkait hal ini adalah: > *Sebisa mungkin... hindari membandingkan suatu floating point number secara > frontal, bahkan atas suatu angka yang kita anggap sangat simpel.* > Misal: > Sub Iseng() > MsgBox ((1000.7 - 1000) = 0.7) > End Sub > Sebelum menjalankan script tersebut, ditebak dulu ya hasilnya apa... TRUE > atau FALSE? > > Salah satu cara untuk mengatasinya adalah dengan menetapkan suatu > toleransi presisi tertentu. Misal, apabila selisihnya tidak lebih dari 1 > maka dianggap OK. Atau cara lainnya dengan terlebih dahulu melakukan > Rounding atau dengan Format tertentu. > > Saya menggunakan Office 2010 14.0.6129.5000, hasilnya sama dengan di > komputer pak Hendrik. > Excel 2007 SP3 malah "lebih canggih" ya dalam hal ini ya... ^_^ > Terus bagaimana cara mengetahui suatu angka adalah floating point number? > Bila suatu angka bukan masuk dalam golongan (k/2^n) dimana k dan n adalah > bilangan integer > Pada contoh diatas 1000.7 adalah merupakan floating point number. Mau k > dan n diganti dengan angka berapapun (selama k dan n bilangan integer) > tidak bakal ketemu 1000.7 > cmiiw > > > >semoga bermanfaat > > > --- In belajar-excel@yahoogroups.com, Jan Raisin wrote: > > > > pak Hendrik, > > > > jadi nampaknya Office 2010 masih memiliki bug, salah satunya ditemukan > > secara tidak sengaja oleh pak Hendrik. Berhubung pak Hendrik sudah > > memakaiSP1 (belum ada SP yang lebih baru lagi) maka solusinya adalah > > menambahkan script untuk toleransi hasil perhitungan selama selisihnya > > kurang dari 1 maka akan dianggap sama. > > > > Sebagai informasi, pada saat Office 2010 diluncurkan, sudah ditemukan > lebih > > dari 1.800 bug, lalu sebagian besar bug tersebut sudah dikoreksi dengan > > diluncurkannya SP1, tampaknya kasus pak Hendrik adalah salah satu dari > > sekian bug yang belum dikoreksi oleh MS. > > > > Pak Bagus, coba juga update officenya sampai SP3, semoga setelah diupdate > > maka bug tersebut tidak muncul kembali. > > > > Pak zainul, selamat karena Office pak Zainul ternyata yang paling handal > > dan akurat untuk kasus ini.. [?] > > > tetapi Jan tetap menyukai versi yang 2010 ^_^ > > > > apakah mr Kid dan pak Anton memiliki tambahan informasi dan solusi untuk > > kasus ini? > > > > salam, > > > > > > -Miss Jan Raisin- > > > > > > - Untuk kepentingan belajar bersama, pertanyaan harap ditujukan *hanya*ke > > > belajar-excel@yahoogroups.com bukan dikirim japri ke email pribadi > > member milis; > > - Jika pertanyaan lama direspon, bersabarlah karena ALLAH beserta dengan > > > orang-orang yang sabar QS 2:153; > > - Harap dipahami bersama bahwa solusi diberikan oleh Be-Exceller yang > > > memiliki waktu untuk on line, mengetahui solusi atas pertanyaan yang > > ditanyakan, mau dan berani untuk membantu, tanpa mengharap imbalan dari > > Thread Starter (TS) atau Post Starter (PS), selain itu Be-Excelller juga > > memiliki kewajiban yang harus dipenuhi di dunia nyata jadi tidak selalu > > bisa on line setiap saat; > > - Semoga semangat berbagi dan membantu semakin meningkat di kalangan > > > Be-Exceller dan menjadi amalan yang baik untuk tabungan di akhirat nanti. > > اَم٠ين يَا رَبَÙ` الÙ'عَالَم٠يÙ'Ù† > > > > > > > > Pada 25 Juni 2013 14.48, hendrik karnadi hendrikkarnadi@... menulis: > > > > > > Miss Jan, Pak Zainul, > > > > > > Di komputer saya hasilnya sama seperti hasil di komputer pak Bagus, > > > bedanya saya pake Office 2010 SP1. > > > > > > Terima kasih. > > > > > > Salam, > > > HK > > > > > > > > > ------------------------------ > > > *From:* Bagus bagus@... > > > *To:* belajar-excel@yahoogroups.com > > > *Sent:* Tuesday, 25 June 2013, 14:29 > > > > > > *Subject:* Re: [belajar-excel] Kasus1_file ga bisa ditutup > > > > > > > > >  > > > > Dear Miss Jan; > > > > > > Dari scrip dibawah, saya jalankan di Excel 2003 menghasilkan pesan > berikut: > > > > > > > > > > > > Wassalam > > > ~ Bagus ~ > > > > > > > > > > > > ----- Original Message ----- > > > *From:* Jan Raisin miss.jan.raisin@... > > > *To:* belajar-excel@yahoogroups.com > > > *Sent:* Tuesday, June 25, 2013 2:08 PM > > > *Subject:* Re: [belajar-excel] Kasus1_file ga bisa ditutup > > > > > > > > > > Kebetulan pak Zainul Ulum sudah mencobanya dan tidak ada masalah yang > > > ditemukan di komputer pak Zainul tetapi bermasalah dikomputer pak > Hendrik. > > > > > > apakah Jan bisa minta bantuan kepada pak Zainul Ulum dan pak Hendrik > untuk > > > menjalankan script Jan, lalu tolong di share ke sini screen shoot di > > > komputer masing-masing agar bisa kita bandingkan dan mencari tahu > > > penyebabnya. > > > > > > Tolong juga disertakan Office yang dipakai dan SP berapa. > > > > > > scriptnya sbb: > > > > > > Sub test() > > > Dim lRow As Long > > > Dim dDb As Double, dCr As Double, dSelisih As Double > > > Dim msg As String > > > > > > Sheets("JURNAL").Select > > > lRow = Cells(Rows.Count, 1).End(xlUp).Row > > > Range(Cells(2, 2), Cells(lRow, 2)).Name = "rgDb" > > > Range(Cells(2, 3), Cells(lRow, 3)).Name = "rgCr" > > > > > > dDb = Application.WorksheetFunction.Sum(Range("rgDb")) > > > dCr = Application.WorksheetFunction.Sum(Range("rgCr")) > > > dSelisih = dDb - dCr > > > > > > If dDb = dCr Then > > > MsgBox "Sama", vbOKOnly, "Result" > > > Else > > > MsgBox "Beda " & dSelisih, vbOKOnly, "Result" > > > End If > > > End Sub > > > > > > Salam, > > > > > > > > > -Miss Jan Raisin- > > > > > > > > > - Untuk kepentingan belajar bersama, pertanyaan harap ditujukan > *hanya*ke > > > > belajar-excel@yahoogroups.com bukan dikirim japri ke email pribadi > > > member milis; > > > - Jika pertanyaan lama direspon, bersabarlah karena ALLAH beserta > > > > dengan orang-orang yang sabar QS 2:153; > > > - Harap dipahami bersama bahwa solusi diberikan oleh Be-Exceller yang > > > > memiliki waktu untuk on line, mengetahui solusi atas pertanyaan yang > > > ditanyakan, mau dan berani untuk membantu, tanpa mengharap imbalan dari > > > Thread Starter (TS) atau Post Starter (PS), selain itu Be-Excelller > juga > > > memiliki kewajiban yang harus dipenuhi di dunia nyata jadi tidak selalu > > > bisa on line setiap saat; > > > - Semoga semangat berbagi dan membantu semakin meningkat di kalangan > > > > Be-Exceller dan menjadi amalan yang baik untuk tabungan di akhirat > nanti. > > > اَم٠ين يَا رَبَÙ` الÙ'عَالَم٠يÙ'Ù† > > > > > > > > > > > > > Pada 25 Juni 2013 14.01, zainul_ulum[at]yahoo[dot]com < > > > zainul_ulum@... menulis: > > > > > > ** > > > > > > Pak Hendrik,**** > > > Saya coba macronya di computerku, tidak ada pesan yang dimaksud.**** > > > thanks**** > > > -zainul-**** > > > **** > > > *From:* belajar-excel@yahoogroups.com [mailto: > > > belajar-excel@yahoogroups.com] *On Behalf Of *hendrik karnadi > > > *Sent:* Tuesday, June 25, 2013 1:56 PM > > > *To:* belajar-excel@yahoogroups.com > > > > > > *Subject:* Re: [belajar-excel] Kasus1_file ga bisa ditutup**** > > > **** > > > **** > > > Dear Pak Bagus,**** > > > **** > > > > Hasil pengecekan saya pada menu Formula, Name Manager, rangenya sudah > > > sampai batas akhir No Rek (kolom A) sesuai dengan yang saya bold.**** > > > **** > > > > Untuk mencegah adanya "Null String", sel kosong pada kolom B dan C > sudah > > > saya delete dan saya juga sudah mencari "Null String" dengan Ctrl F > namun > > > tidak menemukannya.**** > > > **** > > > > Semoga Pak Bagus atau rekan2 lain masih ada ide lainnya untuk > > > menyelesaikan masalah tersebut. Mungkin ini salah satu "misteri" macro > ..... > > > **** > > > **** > > > Terima kasih.**** > > > **** > > > Salam,**** > > > HK **** > > > **** > > > **** > > > ------------------------------ > > > *From:* Bagus bagus@... > > > *To:* belajar-excel@yahoogroups.com > > > *Sent:* Tuesday, 25 June 2013, 13:14 > > > *Subject:* Re: [belajar-excel] Kasus1_file ga bisa ditutup**** > > > **** > > > **** > > >  **** > > > Dear Pak Hendrik..**** > > > **** > > > > Dari scrip dibawah yg berbunyi "WorksheetFunction.Sum(Range("Debit")) > <> > > > _ WorksheetFunction.Sum(Range("Kredit"))**** > > > **** > > > > kalo saya artikan adalah membandingkan "range debet" dengan "range > > > kredit".**** > > > **** > > > Sedangkan kalau dilihat pada Define name, maka:**** > > > Range debet adalah =OFFSET(JURNAL!$B$2,0,0,*COUNTA(JURNAL!$A:$A)-1*,1) > > > akan menghasilkan 18.236.136 (Array Formula)**** > > > Range kredit adalah > =OFFSET(JURNAL!$C$2,0,0,*COUNTA(JURNAL!$A:$A)-1,*1*)*akan menghasilkan 0 > (Array Formula) > > > **** > > > Ini artinya file tidak bisa ditutup.**** > > > **** > > > > Memang kalau di sum pada Colom B (Bukan Range Debet) hasilnya sama > > > dengan colom C (Bukan Range kredit) yang artinya file bisa ditutup**** > > > **** > > > Mungkin ini yg menyebabkan file ini tidak bisa di close pak..**** > > > **** > > > > Ini cuma menurut logika saya saja pak, karena saya buta dengan VBA > Excel. > > > **** > > > **** > > > Mohon maaf kalo Ngawur...**** > > > **** > > > **** > > > Wassalam**** > > > ~ Bagus ~**** > > > **** > > > **** > > > > > > ----- Original Message ----- **** > > > *From:* hendrik karnadi hendrikkarnadi@... **** > > > *To:* belajar-excel@yahoogroups.com **** > > > *Sent:* Tuesday, June 25, 2013 12:35 PM**** > > > *Subject:* Fw: [belajar-excel] Kasus1_file ga bisa ditutup**** > > > **** > > > **** > > > > Kalau file harus ditutup (karena sdh waktunya pulang kantor) maka hapus > > > saja macronya (atau diberi tanda *'*).**** > > > **** > > > Salam,**** > > > HK**** > > > **** > > > **** > > > ----- Forwarded Message ----- > > > *From:* hendrik karnadi hendrikkarnadi@... > > > *To:* "belajar-excel@yahoogroups.com" belajar-excel@yahoogroups.com > > > *Sent:* Tuesday, 25 June 2013, 12:26 > > > *Subject:* [belajar-excel] Kasus1_file ga bisa ditutup**** > > > **** > > > **** > > > Coba copy macro ini pada VBE Sheet (Workbook),**** > > > Private Sub Workbook_BeforeClose(Cancel As Boolean)**** > > > Sheets("JURNAL").Select**** > > > If WorksheetFunction.Sum(Range("Debit")) <> _**** > > > WorksheetFunction.Sum(Range("Kredit")) Then**** > > > > MsgBox "MAAF, Jumlah Debit tidak sama dengan Kredit" & vbCrLf & _ > > > **** > > > "SILA DICEK KEMBALI", _**** > > > vbCritical + vbOKOnly, "FILE TIDAK BISA DITUTUP"**** > > > Cancel = True**** > > > End If**** > > > End Sub**** > > > **** > > > > dan coba tutup file dengan mengklik tanda "x" pada pojok kanan atas > maka > > > akan tmapak pesan (MsgBox) di atas yang menyatakan bahwa Debit <> > Kredit, > > > padahal kalau dijumlah secara manual dengan cara mendrag atau menyorot > > > kolom maka jumlah debit = kredit**** > > > **** > > > Pertanyaannya:**** > > > Mengapa ?**** > > > **** > > > Salam,**** > > > HK**** > > > **** > > > > Pertanyaan ini datang dari seorang anak buah yang belum saya temukan > > > jawabannya**** > > > **** > > > > > > **** > > > **** > > > > > > > > > > > > > > > > > > > >