返回列表 上一主題 發帖

COUNTA 或某些函數在VBA上使用的疑問

COUNTA 或某些函數在VBA上使用的疑問

Dear 大大們

      小弟在VBA撰寫有關函數部份的程式碼時,都會有一個問題
      就是在SHEET1讀取SHEET2的資料時,會讀不到,例如附件中的COUNTA這個函數

      能否請大大講解一下,問題是什麼??? 其函數在VBA上撰寫的基本觀念為何?? 好讓小弟可以學習~


         在VBA內使用COUNTA函數測試.rar (8.23 KB)

回復 1# hugh0620


          Sheet1.Cells(1, 1) = Application.CountA(Sheet2.[A7:A65536])
學海無涯_不恥下問

TOP

回復 1# hugh0620
你的程式碼是在 Sheet1物件
    Sheet1.Cells(1, 1) = Sheet2.Application.CountA([A7:A65536])
[A7:A65536] 是傳回 Sheet1的工作表的位置  ->如要指定本身工作表以外的工作表需指明

如你的程式碼是在 一般模組(Module )
    Sheet1.Cells(1, 1) = Sheet2.Application.CountA([A7:A65536])
[A7:A65536] 是傳回 作用中工作表的位置(ActiveSheet)   ->如要指定作用中工作表(ActiveSheet)以外的工作表需指明

TOP


這樣我也多學了一招哦
謝謝分享囉
jeason

TOP

回復 3# GBKEE


    謝謝大大的詳細說明~ 讓我能夠了解~ 感恩~

TOP

回復 2# Hsieh


    謝謝大大~ 原來我的sheet2是放錯了位置

TOP

EXCEL SHEET 跟ActiveSheet 很不容易理解
需要驗證。到現在還是無法很容易理解@@

真是傷腦筋

TOP

回復 3# GBKEE


    Dear 大大

        小弟想要再請問一個問題
        若是我在用COUNTA去統計時,若我的區間是不一定的時候,就會有問題
           一般正常的寫法是
        Application.CountA(Sheet2.[E22: E65536]) [固固區間進行統計)
           若我已W是一個Row的數值(亦即是該儲存格是在第幾列)        
        Application.CountA(Sheet2.[E&W: E65536]) [改變成可浮動區間進行統計]

           請大大教導我

            COUNTA進階問題_20110106.rar (9.5 KB)
學習才能提升自己

TOP

回復 8# hugh0620
Sheet1.Cells(4, 2) = Application.CountA(Sheet1.[A22:A65536])                       '不接受變數
Sheet1.Cells(4, 2) = Application.CountA(Sheet1.Range("A" & W & ":A65536")) '接受變數

TOP

回復 9# GBKEE

   謝謝大大~ 幫我解決 (我自己試了老半天都無法解決):L
學習才能提升自己

TOP

        靜思自在 : 唯其尊重自己的人,才更勇於縮小自己。
返回列表 上一主題