我想讓我的Excel工作表跟蹤我的輸入。如何在EXCEL中進行輸入雕像跟蹤
例如,當我輸入類似ID的東西並按下回車鍵時,它將在另一張表中查找該ID並找到一個名稱,並替換我輸入的原始單元中的ID。
VBA可以嗎?
簡單的例子會很好,謝謝。
更新:
當然是的,只有一些特定的細胞,我將輸入ID,以便不整片需要被跟蹤。
我想讓我的Excel工作表跟蹤我的輸入。如何在EXCEL中進行輸入雕像跟蹤
例如,當我輸入類似ID的東西並按下回車鍵時,它將在另一張表中查找該ID並找到一個名稱,並替換我輸入的原始單元中的ID。
VBA可以嗎?
簡單的例子會很好,謝謝。
更新:
當然是的,只有一些特定的細胞,我將輸入ID,以便不整片需要被跟蹤。
爲您的任務使用Worksheet_Change(ByVal Target As Range)
事件處理程序(爲工作表定義)。每當該工作表的單元格值發生變化時(用戶或其他代碼),都會調用該函數。
Target
參數包含已更改的單元格範圍。現在遍歷該範圍中的列和行,並執行您想要執行的查找/替換操作。確保事件處理程序不會自行調用附加的布爾變量。
Public NoCellUpdateHandle As Boolean
Private Sub Worksheet_Change(ByVal Target As Range)
If NoCellUpdateHandle Then Exit Sub
Dim row As Integer, col as Integer, idValue as String, replaceValue as String
For Each columnObj In Target.Columns
For Each rowObj In columnObj.Rows
row = rowObj.Row
col = columnObj.Column
' You can filter for certain rows/columns
If row > 5 And row < 10 And col = 7 Then
idValue = ActiveSheet.Cells(row, col).Value
' do the lookup for the id value in the other worksheet here
' replaceValue = lookup(idValue)
' Disable the event handler and perform the replacement
NoCellUpdateHandle = True
ActiveSheet.Cells(row, col).Value = replaceValue
NoCellUpdateHandle = False
End If
Next rowObj
Next columnObj
End Sub
這應該是你所需要的。
你會發現很少有雕像需要跟蹤... – 2012-03-13 21:19:00