返回列表 上一主題 發帖

表單的Label同步執行

表單的Label同步執行

請教各位先師們,如何在表單裡的TextBox1輸入數字,在Label1(年.月)跟著顯現加總後的答案,麻煩老師們指導一下,謝謝!

表單Label1.rar (87.13 KB)

回復 12# GBKEE


    感謝兩位老師的回答,記下來了~謝謝!!!

TOP

回復 10# man65boy
"其中的sht1 .s ht2 . sht3 .是指模組嗎?那是否要應用到的活頁都要依序輸入sht4....sht5呢?"
這不是模組是變數: 你指定為活頁簿上的工作表
模組 是VBA 中寫程式碼的地方



回復 11# Hsieh
感謝提醒,是我沒注意的.

TOP

回復 10# man65boy


    xlday是EXCEL保留字,請以其他字串命名
學海無涯_不恥下問

TOP

回復 9# GBKEE

感謝GBKEE老師的修改指導,再請問老師,
Dim sht1 As Worksheet
Dim sht2 As Worksheet '放在這裡   模組所有程序都可用
Dim sht3 As Worksheet '放在這裡   模組所有程序都可用
Dim xlday                           '放在這裡   模組所有程序都可用

其中的sht1 .s ht2 . sht3 .是指模組嗎?那是否要應用到的活頁都要依序輸入sht4....sht5呢?
再次地謝謝老師。

TOP

回復 8# man65boy
  1. Dim sht1 As Worksheet
  2. Dim sht2 As Worksheet '放在這裡   模組所有程序都可用
  3. Dim sht3 As Worksheet '放在這裡   模組所有程序都可用
  4. Dim xlday                           '放在這裡   模組所有程序都可用
  5. '--------上面是模組頂端  ---------
  6. Private Sub UserForm_Initialize()
  7. 'Dim xlday  你放在這裡   只有 UserForm_Initialize 這程序可用
  8.     Dim tmpArry()
  9.     Set sht1 = Sheets("進貨")
  10.     Set sht2 = Sheets("銷貨")
  11.     Set sht3 = Sheets("資料")
  12.    R = sht1.Range("AS65536").End(xlUp).Row
  13.     xlday = Format(Date, "yyyy")  '小弟只想應用加總YYYY
  14.     Label23 = xlday   
  15. End Sub
複製代碼

TOP

本帖最後由 man65boy 於 2012-6-22 07:17 編輯

回復 7# GBKEE
謝謝GBKEE大大,程式貼上去了,還是出現"不能指定常數",檔案因涉及商業隱私,無法附上完整版,小弟附上縮小版,希望老師能幫忙解題!
1010622.rar (26.49 KB)

在範例中
xlday = Format(Date, "yyyy/mm/dd")

小弟只想應用加總YYYY

TOP

回復 6# man65boy
  1. Option Explicit
  2. Dim xlday       '模組頂端宣告變數為此模組的私用變數  僅此模組的程序可引用
  3. Private Sub UserForm_Initialize()
  4.     Dim tmpArry(), sht1 As Worksheet, sht2 As Worksheet, R As Interior
  5.     '如此程序內 Dim 宣告變數的變數,僅此程序可引用,其他程式中無法引用.
  6.     Set sht1 = Sheets("進貨")
  7.     Set sht2 = Sheets("銷貨")
  8.     R = sht1.Range("AS65536").End(xlUp).Row
  9.     xlday = Format(Date, "eemm")
  10.     Label1 = xlday
  11. End Sub
  12. Private Sub TextBox1_Change()
  13.    Label1 = IIf(Val(TextBox1) > 0, Val(TextBox1), 0) + Val(xlday)
  14.    'xlday 這裡可以引用到
  15.    'sht2  這裡不可以引用到
  16. End Sub
複製代碼

TOP

本帖最後由 man65boy 於 2012-6-22 01:27 編輯

回復 5# GBKEE


    感謝GBKEE老師的回答,
再請教老師,當表單裡已有別的宣告時,
Private Sub UserForm_Initialize()
    Dim tmpArry()
Set sht1 = Sheets("進貨")
    Set sht2 = Sheets("銷貨")
R = sht1.Range("AS65536").End(xlUp).Row
該如何把以下這段程式納入上面那一段
Dim xlday
Private Sub UserForm_Initialize()
    xlday = Format(Date, "eemm")
    Label1 = xlday
End Sub

小弟投降了,因為有重複的兩段 Private Sub UserForm_Initialize() 麻煩老師指點一下!

TOP

回復 4# man65boy
  1. Dim xlday
  2. Private Sub UserForm_Initialize()
  3.     xlday = Format(Date, "eemm")
  4.     Label1 = xlday
  5. End Sub
  6. Private Sub TextBox1_Change()
  7.    Label1 = IIf(Val(TextBox1) > 0, Val(TextBox1), 0) + Val(xlday)
  8. End Sub
複製代碼

TOP

        靜思自在 : 生氣,就是拿別人的過錯來懲罰自己。
返回列表 上一主題