Custom Average Function Di bawah ini kita akan melihat sebuah program di Excel VBA yang menciptakan User Defined Function yang menghitung rata-rata rentang yang dipilih secara acak, termasuk satu atau lebih nilai yang outlier dan tidak boleh dirata-ratakan. Fungsi yang ditetapkan pengguna harus ditempatkan dalam modul. 1. Buka Editor Visual Basic dan klik Insert, Module. 2. Tambahkan baris kode berikut: Function CUSTOMAVERAGE (rng As Range, lower As Integer. Upper As Integer) Nama Fungsi kita adalah CUSTOMAVERAGE. Bagian antara tanda kurung berarti kita memberi Excel VBA sebuah range dan dua variabel Integer sebagai input. Kami memberi nama rng jangkauan kami, satu variabel Integer yang kami sebut lebih rendah, dan satu variabel Integer yang kami sebut di atas, namun Anda dapat menggunakan nama apapun. 3. Selanjutnya, kita mendeklarasikan objek Range dan dua variabel tipe Integer. Kami memanggil sel objek Range. Satu variabel Integer yang kita sebut total dan satu variabel Integer yang kita sebut berhitung. Dim cell As Range, total As Integer. Hitung Sebagai Integer 4. Kami ingin memeriksa setiap sel dalam rentang yang dipilih secara acak (kisaran ini bisa bermacam-macam ukurannya). Di Excel VBA, Anda bisa menggunakan loop For Each Next untuk ini. Tambahkan baris kode berikut: Untuk Setiap sel Dalam rng Catatan: rng dan sel dipilih secara acak di sini, Anda dapat menggunakan nama apapun. Ingatlah untuk merujuk ke nama-nama ini di bagian kode Anda yang lain. 5. Selanjutnya, kita periksa setiap nilai dalam rentang ini jika jatuh di antara dua nilai (di bawah dan di atas). Jika benar, kita bertambah total dengan nilai sel dan kita bertambah hitungannya dengan 1. Tambahkan baris kode berikut ke loop. Jika cell. Value gt lebih rendah Dan cell. Value lt atas Kemudian total total cell. Value count count 1 End If 6. Untuk mengembalikan hasil dari fungsi ini (rata-rata yang diinginkan), tambahkan baris kode berikut di luar loop. Jumlah total CUSTOMAVERAGE 7. Jangan lupa mengakhiri fungsinya. Tambahkan barisnya: 8. Sekarang Anda bisa menggunakan fungsi ini sama seperti fungsi Excel lainnya untuk menghitung rata-rata angka yang berada di antara dua nilai. Sebagai cek, Anda dapat menghapus semua nilai yang lebih rendah dari 10 dan lebih tinggi dari 30 dan menggunakan fungsi Rata-rata standar di Excel untuk melihat apakah Excel menghitung rata-rata yang sama dengan fungsi rata-rata khusus kami. Fungsi fungsi rata-rata kebiasaan kami Perhatikan: fungsi ini hanya tersedia di workbook ini. Saya mencoba menghitung rata-rata menggunakan Visual Basic 2010 dan menampilkan rata-rata ini di jendela pesan. Saat melakukan debugging (mengomentari kode dan mencoba variabel berbeda yang dikirim ke kotak pesan sebagai string), saya mendapati jendela pesan muncul, namun tanpa data yang dikembalikan. Seperti yang saya punya kode sekarang, saya tidak menerima kesalahan, tapi saya bahkan tidak bisa mendapatkan kotak pesan untuk muncul. Pada dasarnya program tersebut menyuruh pengguna memasukkan sejumlah buku yang telah mereka baca yang kemudian digunakan untuk menghitung total poin berdasarkan jumlah buku yang dibaca. Latihan meminta agar rata-rata semua buku dibaca. Tanya 26 Feb at 1: 37Thread: hitung moving average moving average menggunakan VB 2010 hitung simple moving moving average menggunakan VB 2010 kode saya menghasilkan variabel dengan kolom angka seperti ini: apa yang ingin saya lakukan adalah menggunakan VB untuk memberi Saya rata-rata untuk setiap x jumlah baris, dan kemudian menyimpannya di var lain, dan kemudian mencetak VB MAX dan MIN dari rata-rata itu. Misalnya, jika saya ingin menghitung rata-rata untuk setiap 10 baris: 5248 5249 5258 5251 5247 5246 5251 5228 5235 5251 5246,4 5241 5245.7 5240 5244,8 5247 5243.7 5259 5244.5 5261 5245.9 sehingga Anda dapat melihat bahwa dimulai dengan catatan ke-10 rata-rata dihitung Untuk catatan 1-10, kemudian 2-11, kemudian 3-12, kemudian 4-13, kemudian 5-14, maka 6-15 MAX avg adalah 5246,4 dan MIN adalah 5243,7 jika saya ingin mendapatkan rata-rata untuk setiap 5 Catatan sebagai gantinya (misalnya), maka rata-rata pertama akan menghitung rata-rata 1-5, lalu 2-6, kemudian 3-7 dan seterusnya, bagaimana cara terbaik untuk kode ini agar mendapatkan rata-rata bergerak dan juga menemukan MAX Dan MIN dari rata-rata Re: hitung rata-rata bergerak sederhana bergulir menggunakan VB 2010 Dia bermaksud persis apa yang dia katakan: Dia memiliki satu variabel string dengan semua nilai di dalamnya dipisahkan oleh karakter NewLine. Akan mungkin untuk mengambil variabel itu dan Split pada newline untuk memecahnya menjadi serangkaian angka dalam rangkaian string, yang kemudian dapat diubah menjadi array bilangan bulat, tapi saya masih berpikir akan lebih baik untuk tidak memilikinya. Variabel untuk memulai. Tanda tangan biasa saya yang membosankan: Tidak ada Re: hitung moving average moving average menggunakan VB 2010 setuju dengan shaggy, id menggunakan daftar (bilangan bulat) dan bukan variabel dengan banyak baris yang mengandung 1 bilangan bulat per baris. Daftar yang paling serbaguna itu akan bekerja dengan kode saya diposting. Re: menghitung rata-rata bergulir sederhana bergerak menggunakan VB 2010 saya punya loop untuk membangun string dengan angka masuk sebagai data disebut sekarang kode terlihat seperti ini: masalah dengan kode adalah 1) i cant get m60c ada Di luar loop (hanya menunjukkan nilai terakhir, dan 2) saya tidak tahu bagaimana cara menyimpan data saat masuk sebagai rangkaian bilangan bulat jika saya memasukkan nilai secara manual dimana kode bekerja jika tidak, itu memerlukan lebih banyak wawasan terima kasih untuk jawabannya
Comments
Post a Comment