![我想用特定數字替換字符,我需要輸入什麼公式才能做到這一點?](https://rvso.com/image/1628435/%E6%88%91%E6%83%B3%E7%94%A8%E7%89%B9%E5%AE%9A%E6%95%B8%E5%AD%97%E6%9B%BF%E6%8F%9B%E5%AD%97%E7%AC%A6%EF%BC%8C%E6%88%91%E9%9C%80%E8%A6%81%E8%BC%B8%E5%85%A5%E4%BB%80%E9%BA%BC%E5%85%AC%E5%BC%8F%E6%89%8D%E8%83%BD%E5%81%9A%E5%88%B0%E9%80%99%E4%B8%80%E9%BB%9E%EF%BC%9F.png)
例如,如果我輸入字母“W”,我希望單元格自動替換為數字 4,000,如果輸入字母“B”,我希望單元格自動替換為數字 3,000。如果我隨後更改字母,我希望單元格自動更改為新數字。
答案1
你可以嘗試這個程式碼:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub
If Target.Columns.Count = 1 Then
If Target.Value = "W" Then
Target.Value = 4000
ElseIf Target.Value = "X" Then
Target.Value = 5000
ElseIf Target.Value = "Y" Then
Target.Value = 6000
End If
Endif
End Sub
怎麼運作的:
- 要么按Alt+F11。
- 或者右右鍵單擊工作表選項卡,然後從彈出式選單中單擊V查看代碼。
您將看到 VBA 編輯器視窗。
C奧比&磷嘗試這段程式碼。
按Ctrl+s 儲存。
現在按Alt+Q 返回工作表。
現在,只要您在 A 列中輸入 W、X 或 Z,此程式碼就會將其替換為指定的數字。
注意
- 您可以新增更多條件。
- 字母和受尊重的數字是可編輯的。
- 您可以使用程式碼行調整列,,
If Target.Columns.Count = 1 Then
這裡1代表任一列。
也應該是,,
If Target.Columns.Count >= 1 And Target.Columns.Count <= 5 Then
如果您只想在 A 列中工作,那麼最好使用此程式碼。
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Me.Range("A:A")) Is Nothing Then
If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub
If Target.Value = "W" Then
Target.Value = 4000
ElseIf Target.Value = "X" Then
Target.Value = 5000
ElseIf Target.Value = "Y" Then
Target.Value = 6000
End If
End If
End Sub
注意
- 這
Me.Range("A:A"))
是可編輯的並且應該Me.Range("A:C"))
或Me.Range("A1:A100"))
也。 - 將工作簿另存為中號acro 啟用 (.xlsm)。