返回列表 上一主題 發帖

間斷輸入時 如何讓程式也可以帶出資料

回復 6# hugh0620
回復 7# hugh0620
  1. Private Sub Worksheet_Change(ByVal 變數 As Range)
  2.     Dim I
  3.     If 變數.Count > 1 Or (變數.Column <> 2 And 變數.Column <> 3) Then Exit Sub
  4.         If 變數.Column = 2 Then
  5.             Sh = "Data1"
  6.             I = Application.Match(變數, Sheets("Data1").[B:B], 0)
  7.             If IsNumeric(I) Then
  8.             變數(1, 2) = Sheets("Data1").Cells(I, "C")
  9.             Else
  10.                 變數(1, 2) = ""
  11.             End If
  12.         ElseIf 變數.Column = 3 Then
  13.             I = Application.Match(變數, Sheets("Data2").[B:B], 0)
  14.             If IsNumeric(I) Then
  15.                 變數(1, 2) = Sheets("Data2").Cells(I, "C")
  16.             Else
  17.                 變數(1, 2) = ""
  18.             End If
  19.     End If
  20. End Sub
複製代碼

TOP

回復 10# hugh0620
1. 變數.Count   ?????????
Private Sub Worksheet_Change(ByVal 變數 As Range)
Range是物件  .Count 傳回物件子集合的計數

2.IsNumeric(I) 是否解讀 IsNumeric判別[I]是TRUE或是FALSE
   對的

你所附上的程式可參可9樓所修改的程式碼較為簡潔
On Error Resume Next 使用上要小心 ,如程式碼有寫錯後,執行上是不易查出錯誤在哪裡的.

TOP

        靜思自在 : 人要知福、惜福、再造福。
返回列表 上一主題