VBA計算資料數的方法有函數嘛???

顯示結果從第 1 筆 到 10 筆,共計 10 筆
  1. #1
    會員
    註冊日期
    2002-02-03
    討論區文章
    17

    VBA計算資料數的方法有函數嘛???

    EX:有m筆資料(此例為5筆)
    分別為
    A B C
    1 25 36 81
    2 35 26 64
    3 85 64 95
    4 35 54 84
    5 87 98 48

    Dim i as single
    i=1
    do until cells(i,1)=""
    i=i+1
    loop
    m=i-1
    執行完.........m=5

    可是只是計算資料'列數'就要用這個寫........
    是不是有函數可以直接用.........
    還請高手們指導..........



  2. #2
    會員
    註冊日期
    2001-07-05
    討論區文章
    74
    用ROWS()函數呀
    在括號裡輸入你要計算的範圍,如:A1:A5
    就會傳回5呀...
    不用用到VBA啦...

  3. #3
    會員
    註冊日期
    2002-02-03
    討論區文章
    17
    最初由 Oyazi 發表
    用ROWS()函數呀
    在括號裡輸入你要計算的範圍,如:A1:A5
    就會傳回5呀...
    不用用到VBA啦...
    先謝謝您的回應...........
    可素我有100多個檔案勒.........
    所以用VBA寫來整理檔案比較快.........
    要計算資料有m筆.....只是程式中的一部份
    ex:
    for i=1 to m
    .....
    next i
    m就是我的資料數,假如我要用A1:A5的方式,
    那就直接寫成
    for i=1 to 5就好囉....因為已經看到A1:A5,
    自然知道有5筆資料囉.......
    小弟只是想說有沒有函數可以簡化,
    免得還要寫幾行程式來計算......
    如果沒有,那還是用這幾行程式代表囉........
    請高手大大們指導一下......
    感激感激.........

  4. #4
    會員
    註冊日期
    2001-10-16
    討論區文章
    1,893
    如果資料是從第一列開始,而且有資料的列與列間沒有空白列,那麼 ActiveSheet.UsedRange.Rows.Count 可以計算出含有資料的列數。

  5. #5
    平風造雨 cinta3344 的大頭照
    註冊日期
    2002-04-11
    討論區文章
    72
    最初由 ICLA 發表
    如果資料是從第一列開始,而且有資料的列與列間沒有空白列,那麼 ActiveSheet.UsedRange.Rows.Count 可以計算出含有資料的列數。
    我實際TRY了一下,發現中間有列的空白還是能算出耶,會
    卡空白列的好像是CurrentRegion



  6. #6
    會員
    註冊日期
    2002-02-03
    討論區文章
    17
    最初由 cinta3344 發表


    我實際TRY了一下,發現中間有列的空白還是能算出耶,會
    卡空白列的好像是CurrentRegion
    偶也有試過,可是.................
    全部共有r筆資料.........
    當每列的第一欄資料從缺,第2欄到第n欄有資料.....
    共有m列這種資料.......
    所以共有有效資料m-r筆資料.............
    可素用上述的方法..........
    依然還是有r筆,而非m-r筆資料喔...........
    請高手賜教.............

  7. #7
    Take it easy~ leonchou 的大頭照
    註冊日期
    2001-05-03
    討論區文章
    3,244
    何不試試用 COUNTA 或 DCOUNTA 函數?
    看要以哪個欄位為準, 就可算出非空白的筆數了.
    在程式中使用工作表函數, 記得用WordsheetFunction.
    例如 a = WordsheetFunction.Counta(Columns(1))

  8. #8
    平風造雨 cinta3344 的大頭照
    註冊日期
    2002-04-11
    討論區文章
    72
    最初由 Leon Chou 發表
    何不試試用 COUNTA 或 DCOUNTA 函數?
    看要以哪個欄位為準, 就可算出非空白的筆數了.
    在程式中使用工作表函數, 記得用WordsheetFunction.
    例如 a = WordsheetFunction.Counta(Columns(1))
    每次看周前輩的REPLY都能有新的感動,雖然我不是有問題的那個人
    但還是能學到不少技巧,感恩啊~~~

  9. #9
    Take it easy~ leonchou 的大頭照
    註冊日期
    2001-05-03
    討論區文章
    3,244
    我應該謝謝你 因為我回來再看一次才發現自己打錯字了-_-||
    WordsheetFunction ← 這個不對
    WorksheetFunction ← 這個才對

  10. #10
    平風造雨 cinta3344 的大頭照
    註冊日期
    2002-04-11
    討論區文章
    72
    最初由 foxcat99 發表


    偶也有試過,可是.................
    全部共有r筆資料.........
    當每列的第一欄資料從缺,第2欄到第n欄有資料.....
    共有m列這種資料.......
    所以共有有效資料m-r筆資料.............
    可素用上述的方法..........
    依然還是有r筆,而非m-r筆資料喔...........
    請高手賜教.............
    TRY THIS :
    DIM ROWCNT AS LONG
    ROWCNT=RANGE("A1").CurrentRegion.Rows.Count

    前提是你要先讓游標進到有資料的區塊,CELLS(X,X).SELECT之類的
    否則選到空的BLOCK會傳回1,另外不能有空白列隔開



類似的主題

  1. 【求助】Excel計算函數的應用
    作者:shung0116 所在討論版:-- OFFICE 相 關 軟 體 討 論 版
    回覆: 2
    最後發表: 2005-11-29, 04:30 PM
  2. Win98 登入位於另一網段DC的方法有何?
    作者:wowhsieh 所在討論版:-- Windows 討 論 版
    回覆: 0
    最後發表: 2004-04-14, 03:48 PM
  3. 【請問】讓電腦無法安裝程式的方法有什麼?
    作者:doz 所在討論版:-- Windows 討 論 版
    回覆: 12
    最後發表: 2004-02-23, 10:44 AM
  4. 吃玉米的方法有好多種!(心理測驗篇)
    作者:vvcvc 所在討論版:-- 閒 話 家 常 灌 水 版
    回覆: 4
    最後發表: 2002-04-26, 05:38 PM

 

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

發表文章規則

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