Tecnologia, programação e muito Visual FoxPro.

segunda-feira, 9 de maio de 2011

Re: ]] XL-mania [[ Vba 2003 tidak jalan di vba 2007.

 

Mestinya, kalau RELA, ada info sedikit lah..   F6:BD6 apa ada isinya, 

kalau ada seperti apa;  F6 ke bawah bisa seperti apa saja ? 
standarnya: yg dikirimlah sebuah sheet berisi data dummies; gitu loch...

Sepertinya dua vektor tsb adalah Column-Heading & Row-Heading bagi se-area 
tabel; yg kalau tidak diberi contoh,  keadaannya bisa bermacam macam !

Bagi pemilik mungkin F6:BD6 bisa terisi data semua, lalu jika ada yang kosong:
terjadinya kosong dimulai dari cell paling kanan (menyempitnya tabel karena
berkurangnya  kolom)

Tetapi bagi "orang lain" bisa saja G6 sampai BD6 terisi data semua, dan 
hanya F6 yang kosong. Countif akan menghasilkan  = 1 seperti keadaan jika
F6:BC6 berisi data dan BD6 kosong
tetapi  area yg dituju yaitu  : Range("F6").Resize(Y - 6 + 1, 51 - X)
tentu bukan area yg dikehendaki 

Di excel 2007 saya coba (dengan data sembarangan yg tentu tidak sama dengan
data milik pak Dur) menghasilkan error "out of stact space" karena  calculate memicu 
dilaksanakannya prosedur tsb; & di dalam prosedur ada aksi pengisian/editing cell 
yg memicu LAGI: Calculate
sehingga prosedur belum selesai sudah di laksanakan kembali, dan ini akan 
terulang-ulang secara rekursif, yang jumlah perulangannya nya bisa banyak sekalee, 
melebihi batas ketentuan / atau memory yg tersedia.

Saya kira,  biar aman; prosedur sebaiknya dibuat menjadi seperti ini:
( mencegah terpicunya event didalam event )

Private Sub Worksheet_Calculate()
   Dim x As Long, y As Long
   x = WorksheetFunction.CountIf(Range("F6:BD6"), "")
   y = Range("F6").End(xlDown).Row
   Application.EnableEvents = False
   With Range("F6").Resize(y - 6 + 1, 51 - x)
      .Value = .Value
   End With
   Application.EnableEvents = True
End Sub

seharusnya (sebelum makro diubah) dijalankan di excel 2003 maupun 2007 
 = sama keadaannya, artinya jia pun ditulis di excel2003, pencegahan event
juga harus TETAP ada !

CMIIW



2011/5/5 alwi abdurrahman <alwi.abdurrahman@yahoo.com>

Dear para pakar XL Mania yang saya hormati,
Saya mempunyai formula vba di excel 2003 sbb :
   
   Private Sub Worksheet_Calculate() 
      X = WorksheetFunction.CountIf(Range("F6:BD6"), "")
      Y = Range("F6").End(xlDown).Row
            With Range("F6").Resize(Y - 6 + 1, 51 - X)
                  .Value = .Value
            End With
   End Sub

Ketika saya menjalankan program tsb di vba Excel 2007, selalu muncul warning sbb :
   
    "Run-time error "28" : Out of stack space.

Mohon mendapatkan informasi, mengapa hal tsb dapat terjadi.
Atas perhatian dan kerjasamanya diucapkan terimakasih.

Salam hormat : Alwi Abdurrahman

__._,_.___
Recent Activity:
+-:: XL-mania ::::::::::::::::::::----------------------------------+
| maaf baru moderate sekarang... momods kurang tidur berhari-hari   |
| jadi budak kantoooOOooorrr...                                     |
| http://www.facebook.com/group.php?gid=37671048001&ref=mf          |
+-------------------------------------------------------------------+
| DILARANG : MLM, money game, OOT, iklan tanpa izin, SARA, testing, |
| pembicaraan pribadi, one line message,  melecehkan,  tidak sopan. |
+-------------------------------------------------------------------+
| Buat subjek yang kreatif, jangan : "tanya", "help", "mohon bantu" |
| Usahakan besar attachment < 200 kb. Gunakan  winzip  jika  perlu. |
+-------------------------------------------------------------------+
| Ajak teman-teman Anda bergabung dengan mengirim e-mail kosong ke  |
| XL-mania-subscribe@yahoogroups.com atau kirimkan mereka file dari |
| http://groups.yahoo.com/group/XL-mania/files/Promotion/           |
+-------------------------------------------------------------------+
| Berikan testimoni di : http://www.friendster.com/xlmania atau...  |
| http://www.xl-mania.com/2008/06/testimoni-xl-mania.html           |
+-------------------------------------------------------------------+
| Message lama ada di :                                             |
| http://groups.yahoo.com/group/XL-mania/messages [perlu yahoo id]  |
| http://www.mail-archive.com/xl-mania@yahoogroups.com              |
+-------------------------------------------------------------------+
MARKETPLACE

Stay on top of your group activity without leaving the page you're on - Get the Yahoo! Toolbar now.


Find useful articles and helpful tips on living with Fibromyalgia. Visit the Fibromyalgia Zone today!

.

__,_._,___

Nenhum comentário:

Arquivo do blog