檔案關於一個以VBA寫的人名資料簿

第 1 頁,共 2 頁 1 2 末頁末頁
顯示結果從第 1 筆 到 10 筆,共計 15 筆
  1. #1
    會員
    註冊日期
    2001-09-25
    討論區文章
    25

    檔案關於一個以VBA寫的人名資料簿

    問題真是多!多!!多!!!....
    又是我這位問題少男了...

    問題於檔案裡, 請多多指導 (檔案關於一個以VBA寫的人名資料簿)
    由於我VBA功力尚淺, 寫得不好請多多包涵!!



    附加檔案 附加檔案

  2. #2
    會員
    註冊日期
    2001-07-05
    討論區文章
    74
    這種有關係到資料庫的問題
    我「強烈」建議移師到ACCESS裡處理
    畢竟EXCEL只是個是試算表
    你在檔案裡需求的功能
    在ACCESS裡只消三四個小時就可以完成
    甚至更少
    OFFICE會有這麼多套不同的軟體
    就是因為這些軟體各司其職
    正所謂:工欲善其事,必先利其器呀!!!
    共勉之
    (扯遠了~~~)
    我周末的時候若有空
    我就按照你的檔案裡的欄位試寫一下
    寫好,我再POST到板上來

  3. #3
    Take it easy~ leonchou 的大頭照
    註冊日期
    2001-05-03
    討論區文章
    3,244
    使用 Access 確實是很好,問題是.. 一般使用者對 Access 的了解有多少? 為了像
    Phonebook 這種資料量不大的 case,再去學習使用另一個軟体有無必要? 值得商確。
    當然若常有類似需求, 學 Access 是好的, 但以一般公司行號而言...

    有沒有考慮過使用 Excel 內建的「表單」功能?
    「表單」兼具查詢、新增、修改、刪除等簡易的資料表查詢及維護功能,符合你的需求。
    以程式叫出第二張工作表的表單: Sheets(2).ShowDataForm (沒錯, 就是這短短的一行~)
    想多了解一點「表單」? 2001/5/20主題: 善用 Excel 的 [表單] 功能

    如果還是非用你說的方式不可,那麼 --

    問題1:
    如何可以於某一儲存格內輸入名字, EXCEL會用MSG BOX 之方法告訢我之前輸入的資料?

    選取要輸入查詢的工作 (範例是 Sheet1),在工作表名稱標籤按右鍵 >> [檢視程式碼]
    然後在空白處貼上這個巨集:

    Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo 1
    With Sheets(2)
    Set f = .Columns(4).Find(Target)
    If f Is Nothing Then _
    MsgBox "找不到 " & Target & " 的資料!", 16: Exit Sub
    comp = .Cells(f.Row, 3): phone = .Cells(f.Row, 6)
    End With
    MsgBox "COMPANY: " & comp & " TEL: " & phone, , Target & " 的資料"
    1
    End Sub

    巨集簡述:
    在工作表上輸入名字,程式會以此名字到資料所在工作表 (範例是 Sheet2) 姓名欄尋找,
    若找不到就顯示找不到的訊息,否則顯示其公司名稱及電話號碼。

    問題2:
    如何可以利用TEXTBOX , 修改之前輸入的資料?

    你都已做好一個 UserForm1 了,就直接拿來再利用嘛。
    參考上面巨集中尋找資料的方法,及你那個 [新增] 資料的程式,把找到的資料
    再逐欄寫回 UserForm1 的 TextBox 中以供修改。這段程式寫要在 UserForm1 的
    Initialize 事件中,也就是 Private Sub UserForm_Initialize() 巨集。

    但有個疑點不知你是否想過:一樣是在工作表輸入名稱,程式如何知道你是要
    [查詢] 還是 [修改] ?? 加兩個按鈕,輸入後再選擇? 加個 OptionButton,選擇後再輸入?
    還是輸入後讓程式來問你 ? ...每種方式的做法都不盡相同的。

    問題3:
    如何可以防止輸入相同資料?

    那要看「相同資料」的定義是啥 -- 主要欄位相同? 所有欄位相同? 做法也不一樣。
    在 UserForm1 原來的 CommandButton1_Click() 巨集 ([新增]按鈕)加入判斷即可。
    重點是如果 [新增] 和 [修改] 使用同一個 UserForm,要判斷是何者呼叫,只有 [新增]
    時才需要判斷資料是否重覆,Right ?

    打了一堆,好累~ 有問題的話再討論吧...

  4. #4
    潛字第1號 rEdS 的大頭照
    註冊日期
    2000-10-20
    所在地區
    XDSL
    討論區文章
    4,332
    最初由 常上此站的動物 發表


    是啊!!不知是不是我孤陋寡聞,我身邊的人(同事、朋友)都用Excel較多,沒聽說用Access的耶! 是不是比較不普遍啊??會比Excel難很多嗎?
    建議你先買本書回家做點功課再來問人家
    這樣子一方面你比較容易深入問題核心
    別人也比較容易回答你的問題
    總不能叫別人把一整本書的內容
    連最基本的東西都打出來給你看吧???

  5. #5
    會員
    註冊日期
    2001-07-05
    討論區文章
    74
    ACCESS是一套撰寫資料庫的軟體
    Leon所言甚是,為了一個小小的程式再去學一樣軟體是滿辛苦的
    我個人是認為,ACCESS還滿好上手的啦~~~
    但是先決條件是,你必須要有資料庫系統基本的概念
    再去使用ACCESS會更加的容易

    以EXCEL來說
    你可以在不同的SHEET中利用函數來相互連結
    達到查詢、計算、核對等作業
    就如同我之前說的,EXCEL畢竟只是試算表
    它所可以處理的資料量是有限的
    而且,在EXCEL中,資料量越大,開啟檔案的時間就越長
    當然,現在電腦的運算速度說不一定已經可以cover掉這個問題

    ACCESS同樣的也可以完成上述的部分作業
    最基本的ACCESS是由資料表、查詢、表單三個元素所組成
    資料表用以儲存資料,就像KANKAN兄所附檔案的SHEET2一般
    查詢用以計算、查詢、連結不同資料表間的相互關係
    表單一般用以當作使用者與資料庫間的溝通介面,就如同KANAKN兄SHEET1裡按下按鈕後出現的FORM一樣
    以KANAKN兄的問題來說
    也許只要用到資料表及表單就可以完成
    應該不用用到查詢的功能
    我個人覺得ACCESS最大的好處是它可以處理龐大的資料量
    而且速度相當的快
    對於一些需要多資料的比對與篩選時,ACCESS更顯得其功能的強大
    而且在表單的設計上還有提供精靈
    可以一步一步的依照畫面的指示完成使用者的介面

    話說回來
    我在回應第一篇文章的時候
    真的沒有顧慮到Leon兄所說的問題

    這樣說好了
    我是一個喜歡找捷徑的人
    每個問題都會有其最完美的解決方法
    有時在尋找最好的方法所花費的時間
    就足以讓你解決你的問題
    那為何不先解決眼前的問題,再來找找有沒有更有效的方法呢?



  6. #6
    台灣水電工 沙拉油 的大頭照
    註冊日期
    2002-01-20
    討論區文章
    128
    題外話....
    貴公司的螢幕一定很大~~ ^^

  7. #7
    會員
    註冊日期
    2001-07-05
    討論區文章
    74
    最初由 沙拉油 發表
    題外話....
    貴公司的螢幕一定很大~~ ^^
    啥米意思~~~!?看嚨嘸...
    p.s.我素學生

  8. #8
    Take it easy~ leonchou 的大頭照
    註冊日期
    2001-05-03
    討論區文章
    3,244
    我想沙兄是指kankan的範例檔裡面..
    那個自訂表單真是大的可以~
    所以猜想他們公司的螢幕一定很大!
    ..沒錯吧? e_e

  9. #9
    台灣水電工 沙拉油 的大頭照
    註冊日期
    2002-01-20
    討論區文章
    128
    Oyazi兄您好!
    小弟指的的確如Leon Chou前輩所說的。

  10. #10
    會員
    註冊日期
    2001-09-25
    討論區文章
    25

    哈哈

    最初由 沙拉油 發表
    Oyazi兄您好!
    小弟指的的確如Leon Chou前輩所說的。
    大家都猜錯了, 我只不過將解析度調高至1024X768....嘻嘻
    我的螢幕都只不過是15"罷了



類似的主題

  1. 請問要我用EXECL的VBA寫一個小程式
    作者:ed001227 所在討論版:-- OFFICE 相 關 軟 體 討 論 版
    回覆: 0
    最後發表: 2006-08-13, 01:41 AM
  2. 【問題】請教一個以FLASH做動態網頁的問題
    作者:kiki386 所在討論版:-- 繪 圖 軟 體 討 論 版
    回覆: 1
    最後發表: 2002-05-23, 02:17 AM

 

此網頁沒有從搜尋引擎而來的訪客

發表文章規則

  • 不可以發表新主題
  • 不可以回覆文章
  • 不可以上傳附加檔案
  • 不可以編輯自己的文章
  •