2012-07-16 29 views
0

我試圖跟蹤幾張不同紙張中的ID,我希望能夠給出一個標準的真實值和另一個標準的假。這是我想要完成的僞代碼。檢查單元值是否存在於另外兩張紙上

IF sheet1.A1.value EXISTS AND DOES NOT EXIST IN sheet2.A:A OR sheet3.A:A 
THEN RETURN "true" 
ELSE RETURN "false" 

回答

1

你也可以只用一個Excel公式是這樣做的:

=IF(AND(len('Sheet1'!A1)>0 , ISERROR(MATCH('Sheet1'!A1,'Sheet2'!A:A,0)), ISERROR(MATCH('Sheet1'!A1,'Sheet3'!A:A,0))) , "True", "False") 

此閱讀次數:

  • 如果以下三個condiitons遇到,則爲真,否則爲假
  • 條件1:Sheet 1中的單元格A1存在
    • 檢查是否在它的任何值的長度是大於0
  • 條件2:Sheet 1中的單元格A1不是在表2的列A
    • 潤匹配式,以檢查本
    • 如果匹配返回一個錯誤,然後將其在沒有找到
  • 條件3
    • 運行匹配公式來檢查這個
    • 如果匹配返回一個錯誤,那麼就沒有被發現
+0

我最終使用了幾個Excel公式來實現這一點,但我無法弄清楚一個複雜的。我明天會看看,看看我能否實施你的例子,謝謝 – Jared 2012-07-16 20:27:29

1

試試這個

Sub Sample() 
    Dim SearchString As String 

    SearchString = "Blah" 

    If Application.WorksheetFunction.CountIf(Sheets("Sheet1").Columns(1), SearchString) > 0 And _ 
    Application.WorksheetFunction.CountIf(Sheets("Sheet2").Columns(1), SearchString) = 0 And _ 
    Application.WorksheetFunction.CountIf(Sheets("Sheet3").Columns(1), SearchString) = 0 Then 
     '~~> Display relevant message 
    Else 
     '~~> Display relevant message 
    End If 
End Sub 
+0

我會嘗試做VBA但我在做什麼,我認爲Excel中公式會更好。我每次都必須複製新數據,並且像Excel公式一樣,因爲它們會自動更新,而不是每次都要運行一個宏 – Jared 2012-07-16 20:29:19

相關問題