1
특정 셀의 변경 사항을 확인하는 매크로를 작성했습니다. 셀에 새 값이 특정 기준을 충족하지 않는 경우, 편집 모드에서 셀을 입력하고 해당 셀 사용하는 키보드 단축키의 모든 텍스트 선택 :셀 편집 모드로 이동하여 VBA로 모든 셀 텍스트 선택
Application.SendKeys ("{HOME}+{END}")
이 항상 입력 편집 모드,하지만 종종 선택 실패 텍스트 나는 좀 더 신뢰할만한 것을 찾고 있습니다. 어떤 아이디어?
가 여기에 전체 매크로입니다 : 슬프게도
Private Sub Worksheet_Change(ByVal Target As Range)
' -------------------------------
' Only run the macro if a single cell is selected
If Target.Cells.CountLarge > 1 Then Exit Sub
' -------------------------------
' Declare variables
Dim cell As Range
Dim AccountToFind As String
' -------------------------------
' Assign values to shared variables
AccountToFind = Target.Value
' -------------------------------
' Validate change in HEADER, column D
If Not Intersect(Target, Target.Worksheet.Range("D:D")) Is Nothing And Target.Value <> "" Then
For Each cell In Sheets("_coding references").Range("AccountsPayable[NAME]")
If cell.Value = AccountToFind Then Exit Sub ' passed validation
Next cell
Target.Select
MsgBox ("'" & AccountToFind & "'" & vbNewLine & vbNewLine & "This is not a listed A/P account!")
' --------------------------------------------------------------
' --------------------------------------------------------------
' HERE'S THE PROBLEMATIC CODE
' --------------------------------------------------------------
Application.SendKeys ("{F2}{HOME}+{END}")
' --------------------------------------------------------------
' --------------------------------------------------------------
' --------------------------------------------------------------
End If
End Sub