简化 - 一次更改 2 个单元格
Simplification - changing 2 cells at once
我想弄清楚如何简化代码,但运气不好。
我设法构建了一个工作代码,它执行以下操作:
1.如果'ja'填入34号单元格
- 在单元格 35 中出现日期
- 在单元格 36 中出现用户名
2.如果单元格为空,内容清空
你有什么建议/可以帮助我吗?
非常感谢。
这是我目前的代码:
'show date
If Target.Column = 34 Then
Select Case Target
Case "ja", "Ja": Target.Offset(0, 1) = Date
End Select
'show username
If Target.Column = 34 Then
Select Case Target
Case "ja", "Ja": Target.Offset(0, 2) = Application.UserName
End Select
End If
End If
' clear contents
Dim n As Long
If Target.Column = 34 Then
If IsEmpty(Cells(Target.Row, 34)) Then
Range("AI" & Target.Row & ":AJ" & Target.Row).ClearContents
End If
End If
End Sub
我认为这样做可以:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 34 Then
Select Case Target
Case "ja", "Ja"
Target.Offset(0, 1) = Date 'show date
Target.Offset(0, 2) = Application.UserName 'show username
Case vbNullString 'Clear contents
Range("AI" & Target.Row & ":AJ" & Target.Row).ClearContents
End Select
End If
End Sub
我想弄清楚如何简化代码,但运气不好。
我设法构建了一个工作代码,它执行以下操作: 1.如果'ja'填入34号单元格 - 在单元格 35 中出现日期 - 在单元格 36 中出现用户名 2.如果单元格为空,内容清空
你有什么建议/可以帮助我吗?
非常感谢。
这是我目前的代码:
'show date
If Target.Column = 34 Then
Select Case Target
Case "ja", "Ja": Target.Offset(0, 1) = Date
End Select
'show username
If Target.Column = 34 Then
Select Case Target
Case "ja", "Ja": Target.Offset(0, 2) = Application.UserName
End Select
End If
End If
' clear contents
Dim n As Long
If Target.Column = 34 Then
If IsEmpty(Cells(Target.Row, 34)) Then
Range("AI" & Target.Row & ":AJ" & Target.Row).ClearContents
End If
End If
End Sub
我认为这样做可以:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 34 Then
Select Case Target
Case "ja", "Ja"
Target.Offset(0, 1) = Date 'show date
Target.Offset(0, 2) = Application.UserName 'show username
Case vbNullString 'Clear contents
Range("AI" & Target.Row & ":AJ" & Target.Row).ClearContents
End Select
End If
End Sub