Board logo

標題: [發問] 清單項目如何建置 [打印本頁]

作者: rph    時間: 2011-4-22 16:25     標題: 清單項目如何建置

小弟最近想力用LISTBOX或COMBOX建置清單
書中範例如下(有部份省略):
MSGBOX "建置項目"
WITH ACTIVESHEET.LISTBOX1.ADDITEM "分公司  A"
END WITH

但小弟執行F5時,並沒有出現項目???

可否幫小弟解惑,感謝
作者: GBKEE    時間: 2011-4-22 16:50

回復 1# rph
  1. Sub Ex()
  2.    ActiveSheet.ListBox1.AddItem "分公司  A"
  3.    '''''''''  同下    '''''''''''''''''''''
  4.    With ActiveSheet.ListBox1
  5.         .AddItem "分公司  b"
  6.     End With
  7. End Sub
複製代碼

作者: rph    時間: 2011-4-25 09:56

奇怪 ~~
為什麼我試還是沒有???
Private Sub ListBox1_Click()
ActiveSheet.ListBox1.AddItem "分公司  A"
With ActiveSheet.ListBox1
    .AddItem "分公司 a"
End With
End Sub
作者: chin15    時間: 2011-4-25 11:21

AddItem必須先有清除的動作
否則會加入一堆相同的序列
較建議的作法是:
Private Sub ListBox1_GotFocus()
A = Array("A", "B", "C", "D", "E")
ActiveSheet.ListBox1.List = A
End Sub
作者: hugh0620    時間: 2011-4-25 11:36

回復 1# rph


    樓主的用意~ 應該要更清楚的說明會較好唷~
    看起來一開始的文意~ 應該是
   1. 按下BUTTOM
     2.跑出一個可建置資料在LISTBOX的輸入視窗,可用INPUTBOX 或是設計一個表單方式來處理
   3.將輸入的資料~新增在LISTBOX中  (要考量是否為重覆資料,若是重覆資料這不建入,否則則建入)
作者: Hsieh    時間: 2011-4-25 11:45

回復 5# hugh0620
如果是這樣,試試
  1. Private Sub CommandButton1_Click()
  2. Set d = CreateObject("Scripting.Dictionary")
  3. n = InputBox("請輸入清單項目", , "ItemA")
  4. Do Until n = ""
  5.    If d.exists(n) = False Then ComboBox1.AddItem n
  6.    d(n) = d.Count
  7.    n = InputBox("請輸入清單項目", , "ItemB")
  8. Loop
  9. End Sub
複製代碼

作者: rph    時間: 2011-4-25 11:58

在這邊些感謝大家的指導!造成大家困擾,還請包涵!
我順便再重新說明一下我的問題!!
1.我自訂表單後,在表單上建了LISTBOX1
2.接下來我寫了建立清單的程式碼,按下F5執行,不過在我的LISTBOX中,並沒有出現我所做的清單項目
3.程式碼如下
Private Sub ListBox1_Click()
ActiveSheet.ListBox1.AddItem "分公司  A"
With ActiveSheet.ListBox1
    .AddItem "分公司 A"
End With
End Sub
作者: hugh0620    時間: 2011-4-25 12:24

回復 7# rph


    樓主要不要把做的上傳上來~ 這樣比較簡單處理~
作者: oobird    時間: 2011-4-25 13:14

我自訂表單後,在表單上建了LISTBOX1
又怎會是
ActiveSheet.ListBox1.AddItem "分公司  A"
With ActiveSheet.ListBox1
ListBox1到底在userfoum中還是工作表上的OLEObject?
作者: rph    時間: 2011-4-25 13:52

回復hugh0620
我做的東西,就是這樣!(p.s我照的書本範例弄的)
Private Sub ListBox1_Click()
ActiveSheet.ListBox1.AddItem "分公司  A"
With ActiveSheet.ListBox1
    .AddItem "分公司 A"
End With
End Sub
作者: Hsieh    時間: 2011-4-25 14:06

回復 10# rph

你的對象搞錯了
ActiveSheet.ListBox1這是指工作表內的清單方塊
要對UserForm內的物件應該是
UserForm1.ListBox1
然後執行表單
作者: rph    時間: 2011-4-25 14:15

感謝Hsieh
Private Sub USERFORM_ACTIVATE()
With UserForm1.ListBox1
.AddItem "A"
.AddItem "CC"
.AddItem "DDD"
End With
End Sub
剛才經我測試後,我想這才是正確的寫法,請指教!!
作者: hugh0620    時間: 2011-4-25 14:33

回復 12# rph


    OK呀~ 這個寫法是沒問題的~
    不過~ 樓主~ 以後~ 可以把您寫的檔案上傳上來~ 這樣版主大大比較方便幫您處理~
    不用大家瞎子摸象~
作者: rph    時間: 2011-4-25 17:16

真是抱歉!!
因為"EXCEL VBA功能式索引式參考手冊"這本書寫的指令,只是針對指令寫,而我上網搜尋又找不到有關表單的用法,所以讓我搞不懂
作者: hugh0620    時間: 2011-4-26 10:59

這一本我也有買~ 還不錯啦~ 不過真的都只分別對某一個指令的一些簡單寫法~
沒有一個完整的實例可以應用~
好處是 它有分類~ 可以快速查詢相對應的說明~
作者: rph    時間: 2011-4-27 09:57

回復 15# hugh0620


    抱歉!那再請問一下,有哪幾本書是"hugh0620"建議購買的
作者: hugh0620    時間: 2011-4-27 14:32

本帖最後由 hugh0620 於 2011-4-27 14:33 編輯

回復 16# rph
   買哪幾本書呀~ 這個問題~ 個人會建議您~ 先看看 中台科技大學的數位教學 http://estudy.ctust.edu.tw/estudy/html/excel2003vba.html
  然後~ 再依自己不足的地方來購書~
   況且坊間的excel vba的書籍~ 其實功能的介紹都很分散~

   因此~ 來是要看你的需求~
   我個人是有買excel vba超圖解[應用編] (編法跟你現在買的那本的編法類似)
                     excel vba 與資料庫整合大活用 (這本是使用EXCEL2007)
作者: syuan    時間: 2011-5-13 08:32

本帖最後由 syuan 於 2011-5-13 08:38 編輯
回復  rph
     買哪幾本書呀~ 這個問題~ 個人會建議您~ 先看看 中台科技大學的數位教學 http://estudy.ctust.edu.tw/estudy/html/excel2003vba.html
  然後~ 再依自己不足的地方來購書~
   況且坊間的excel vba的書籍~ 其實功能的介紹都很分散~

   因此~ 來是要看你的需求~
   我個人是有買excel vba超圖解[應用編] (編法跟你現在買的那本的編法類似)
                     excel vba 與資料庫整合大活用 (這本是使用EXCEL2007)hugh0620 發表於 2011-4-27 14:32



    今年度公司有編算,剛好順便也購買了excel vba 與資料庫整合大活用excel vba功能索引式參考手冊。。。。。。

不過那本excel vba 與資料庫整合大活用裡頭的範例,有時候我照著輸入,卻不會動。。。。。。:L

不知道是不是版本不同的關係?


這本excel vba超圖解[應用編],它還有一本基礎講座篇,小弟覺得基礎篇寫的不錯,相當適合初學者

但感覺這兩本程度跳滿大的,基礎篇的範例我照著練習後,再去看應用篇時,發覺程度不夠的話,真的看不太懂。。。。。。




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