返回列表 上一主題 發帖

「呼叫工作表函數」使用上的問題,請不吝指教

「呼叫工作表函數」使用上的問題,請不吝指教

大家好~
我想請問的是在VBA中,如果使用Application.WorksheetFunction.CountIf
我想在sheet1的A欄中逐一比對sheet2的A欄中是否已出現
個人寫的Code如下
Dim myrange As Range
    w = 2
    Do While Sheet1.Cells(w, "A") <> Empty
        ww = Sheet1.Cells(w, "A")
        Set myrange = Worksheets(2).Range("A:A")
        yy = Application.WorksheetFunction.CountIf(myrange, ww)
        If yy <> 0 Then Exit Do
    ....
    w = w + 1
    Loop
ww是商品代碼,問題出在COUNTIF第二個引數似乎在用變數寫入時用法不對…
麻煩各位先進指點一二~感謝
不進則退

大家好~
我想請問的是在VBA中,如果使用Application.WorksheetFunction.CountIf
我想在sheet1的A欄中逐一 ...
mnsmrtl 發表於 2010/8/13 10:19 PM


建議您上傳檔案! 內含... 的code好難理解~


這是函數的說明 您可以先參考一下!

Snap1.jpg (23.23 KB)

Snap1.jpg

若是我回答,使您滿意,請您讓我知道!                  
若是我的回覆,您仍有其他見解,也請您不嗇指教!

TOP

本帖最後由 GBKEE 於 2010-8-14 08:46 編輯

回復 樓主
ww是商品代碼,問題出在COUNTIF第二個引數似乎在用變數寫入時用法不對…
你只附上片段的程式碼 且看不到ww 代進來的資料 無從查起

TOP

回復 3# GBKEE

抱歉沒把問題講清楚,我是想把sheet1「DDE」的data
符合條件後寫入到sheet2「監控」,而在寫入時希望能先比對Sheet2是否有重覆的標的
若無則直接建立在既有資料的下方,所以我就用countif去檢查
ww代表的是股票的代碼,不知道是不是該加入「"」,一直無法正常運作,感謝

股DDE.zip (19.87 KB)

不進則退

TOP

回復 4# mnsmrtl

yy = Application.WorksheetFunction.CountIf(Myrange, ww)  '這行沒錯
If yy <> 0 Then
           ' Exit Do    離開回圈  就結束程式   請刪掉這行
  Sheet1.Cells(w, "O") = 1
'
'

TOP

原來如此,我懂了,感謝樓上大大的指導
不進則退

TOP

        靜思自在 : 站在半路,比走到目標更辛苦。
返回列表 上一主題