Board logo

標題: 靜態變數的使用 [打印本頁]

作者: gogotony    時間: 2011-7-30 10:16     標題: 靜態變數的使用

請教各位高手
我的程式碼如下

sub 複製()
x=cells(1,1)
end sub

sub 貼上()
cells(2,2) = x
end sub

想請問靜態變數應該要在哪邊宣告,變數x才能在兩個巨集間傳遞?
作者: GBKEE    時間: 2011-7-30 10:31

本帖最後由 GBKEE 於 2011-7-30 10:40 編輯

回復 1# gogotony
在模組 的頂耑 設立     公用變數 ->  Public   x    或  私用變數->  Dim   x     
模組內的程序都可呼叫 , 模組外的程序只可呼叫 公用變數 (Public)
非一般模組(Module)內的公用變數,在呼叫時 需指明 物件模組的名稱 如 Sheet2.x
sub Ex()
Dim x   ->程式內的 私用變數  只可在程式內使用
End Sub
作者: kimbal    時間: 2011-7-30 19:23

GBKEE 大說的大概是這樣:
把宣告放在外面,

public x as integer

sub 複製()
x=cells(1,1)
end sub

sub 貼上()
cells(2,2) = x
end sub

sub 運作()
   call 複製()
   call 貼上()
end sub
作者: oobird    時間: 2011-7-31 00:23

靜態變數只在單一模組內使用
以Static宣告
如以下:
Sub test()
Static x%
x = x + 1
[a65536].End(3)(2) = x
End Sub
程式重複執行時變數會一直保持記憶,直到檔案關閉
要在兩個巨集間傳遞則用公共變數public宣告,如樓上所示。
作者: apolloooo    時間: 2011-8-2 12:59

我先前都是利用 儲存格來作。
sub 複製()
cells(3,3)=cells(1,1)
end sub

sub 貼上()
cells(2,2) = cells(3,3)
end sub




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)