Board logo

標題: [發問] 請問如何在自訂表單中應用VLOOKUP函數 [打印本頁]

作者: minture3    時間: 2015-4-2 13:49     標題: 請問如何在自訂表單中應用VLOOKUP函數

請教各位
小弟希望能夠在自訂表單中1跟2的位置
輸入品項  右方就可以自動顯示對應的金額
如附圖所示
請教Label的值應該要怎麼設定?

[attach]20559[/attach]
作者: koo    時間: 2015-4-2 22:42

Label3 = Val(Label1) + Val(Label2)
作者: minture3    時間: 2015-4-7 12:01

回復 2# koo

感謝回覆
補充一下問題
Lebel3的寫法已經確認
如下圖
我希望在左側輸入品項後 右側的Lebel1就顯示出價格
這樣的話應該要怎麼寫!?
[attach]20592[/attach]
作者: lpk187    時間: 2015-4-7 14:49

回復 3# minture3

是這樣嗎?
  1. Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  2. For Each rn In Sheets("工作表1").Range("a2:a4" & Sheets("工作表1").Cells(Rows.Count, "A").End(xlUp).Row)
  3.     If TextBox1.Value = rn Then
  4.         Label1.Caption = Sheets("工作表1").Cells(rn.Row, "b")
  5.         Exit For
  6.     Else
  7.         Label1.Caption = "查無此資料"
  8.     End If
  9. Next
  10. End Sub
複製代碼

作者: minture3    時間: 2015-4-7 16:52

回復 4# lpk187

不好意思
如果我是要把資料放在個人活頁巨集(就是不管開哪個檔案 這個巨集都可以使用的那個)

這樣的話
For Each rn In Sheets("資料庫")這邊的應該怎麼修正??
我剛剛試了一下直接改成個人活頁巨集的那個工作表名稱
但是執行後沒有反應!

感謝!!
作者: lpk187    時間: 2015-4-7 17:53

回復 6# minture3

再試試看,以前我沒用過這方式做過,所以也不知對不對,程式和表單及"資料庫"都要放在個人巨集工作簿("PERSONAL.xlsb")中
  1. Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  2. For Each rn In Workbooks("PERSONAL.xlsb").Sheets("資料庫").Range("a2:a" & Workbooks("PERSONAL.xlsb").Sheets("資料庫").Cells(Rows.Count, "A").End(xlUp).Row)
  3.     If TextBox1.Value = rn Then
  4.         Label1.Caption = Workbooks("PERSONAL.xlsb").Sheets("資料庫").Cells(rn.Row, "b")
  5.         Exit For
  6.     Else
  7.         Label1.Caption = "查無此資料"
  8.     End If
  9. Next
  10. End Sub
複製代碼
  1. Public Sub test()
  2. UserForm1.Show
  3. End Sub
複製代碼

作者: minture3    時間: 2015-4-8 11:10

回復 6# lpk187

感謝回覆 !!
早上抽空試了一下
發現上回的寫法是可行的
[attach]20601[/attach]
不過表單中一定要有一個textbox2
昨天因為我把它拿掉 所以執行了就沒有反應~~
但是一定要開著PERSONAL這個檔案
如果把檔案隱藏了 也會變成沒有辦法執行~!!會出現"ROWS方法失敗"

至於指定Workbooks("PERSONAL.xlsb").Sheets("資料庫")
試了一下會出現"應用程式或物件定義上的錯誤"




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