返回列表 上一主題 發帖

[求教] 用vba由工作表變更表單的顯示文字

[求教] 用vba由工作表變更表單的顯示文字

想利用工作表內特定的文字, 改變成表單的位顯示, 那只需修改 sheet(ini), 便可做成多種表單.
uesrform1.caption = sheet(ini).[b1]
如Field_2 的欄位內沒有資料, text2 及 textbox2 不顯示

test.rar (17.27 KB)

50 字節以內
不支持自定義 Discuz! 代碼

謝謝教導, c及d 欄資料是測試用戶輸入後, 將資料回傳出來
但是望顥示field title 在label 內, b5到b12 圍
50 字節以內
不支持自定義 Discuz! 代碼

TOP

Private Sub UserForm_Initialize()
這個要被在userform的模組中才有用
不能放在一般模組中
而且現在你的資料變成四列了,不知道你要載入的是什麼。

TOP

不好意思, 忘了上傳檔案, 現補上 test1-1.rar (14.15 KB)
50 字節以內
不支持自定義 Discuz! 代碼

TOP

你應該上傳文件,讓人立刻明白問題點
可能性很多,要這樣猜測,猜不完的。
例如你有沒有userform?工作表名稱對不對,b1是否有內容等等

TOP

圥謝謝 oobird 的教導
已另開中一工作簿, 將sheet重新命名為ini
但執行到第二行時, 出現錯誤
Me.Caption = Sheets("Ini").[b1]
將其跳過, 又到第7 行, 出現錯誤
Set myCbo = Controls.Add("Forms.Label.1", h, True)
未佑是那兒出現問題 , 煩請再斆導, 謝謝
50 字節以內
不支持自定義 Discuz! 代碼

TOP

回復 6# sammyc
  1. Private Sub UserForm_Initialize()
  2. Me.Caption = Sheets("Ini").[b1]
  3. With Sheets("Ini")
  4. h = 1
  5. For Each c In .Range("b5:b100").SpecialCells(2)
  6. m = m + 1
  7. Set myCbo = Controls.Add("Forms.Label.1", h, True)
  8.    With myCbo
  9.    .Height = 20
  10.    .Width = 60
  11.       .Top = h * .Height
  12.       .Left = IIf(m Mod 2, 10, 180)
  13. .Caption = c(1, 0).Value
  14. End With
  15. Set myTb = Controls.Add("Forms.TextBox.1", h, True)
  16.    With myTb
  17.    .Height = 20
  18.    .Width = 60
  19.       .Top = h * .Height
  20.       .Left = IIf(m Mod 2, 60, 220)
  21. .Text = c.Value
  22. If m Mod 2 = 0 Then h = h + 1
  23.       End With
  24.        Next
  25.       End With
  26. End Sub
複製代碼
先把所有Label,TextBox在userform中刪除,讓程式依照工作表上的資料建立

TOP

如將程改成迴圈, 是否這樣 ? 但變數位出現問題
  1. Private Sub UserForm_Initialize()
  2. R_line = 5
  3. For i = 1 To 10

  4.     If IsEmpty(Sheets("ini").Range("B'&r_line")) Then
  5.         UserForm1.Label& i.Visible = False
  6.         UserForm1.TextBox& i.Visible = False
  7.     Else
  8.         UserForm1.Label& i.Caption = Sheets("ini").Range("B" & R_line)
  9.     End If
  10.     R_line = R_line + 1
  11.     Next
  12.    

  13. End Sub
複製代碼
50 字節以內
不支持自定義 Discuz! 代碼

TOP

本帖最後由 sammyc 於 2011-8-4 17:05 編輯

由於權限不足, 未能下載oobird上傳的檔案, 可否將有關式貼出來 ?
50 字節以內
不支持自定義 Discuz! 代碼

TOP

多謝的kimbal教導
50 字節以內
不支持自定義 Discuz! 代碼

TOP

        靜思自在 : 有智慧才能分辨善惡邪正;有謙虛才能建立美滿人生。
返回列表 上一主題