Rich는 한 자리 숫자를 입력하면 자동으로 다음 셀로 넘어가도록 Excel을 구성하는 방법을 궁금해합니다. 그는 다음 셀로 이동하기 위해 Enter 또는 Tab을 누르지 않으려 고합니다. 셀 범위에 대한 항목 값은 항상 단일 양수입니다.

Excel의 기본 구성 설정으로는이 작업을 수행 할 수 없습니다.

대신 항목을 처리 할 매크로를 만들어야합니다. 매크로의 자연스러운 선택은 워크 시트에 대해 Change 이벤트를 사용하는 것입니다. 그러면 값이 셀에 입력 될 때마다 항목이 “분리”되고 행의 셀에 채워집니다.

Private Sub Worksheet_Change(ByVal Target As Range)

If IsNumeric(Target.Value) Then         CRow = Target.Row         CColumn = Target.Column - 1         Entry = Target.Value         For i = 1 To Len(Entry)

Cells(CRow, CColumn + i).Value = Mid(Entry, i, 1)

Next     End If End Sub

이 매크로는 먼저 입력 된 내용이 숫자인지 확인합니다. 그렇다면 숫자는 값에서 추출되어 행의 연속 셀에 배치됩니다.

물론 이러한 매크로의 단점은 이벤트를 트리거하기 위해 여전히 Enter 키를 눌러야한다는 것입니다. Enter 키를 완전히 누르지 않으려면 다른 접근 방식을 사용해야합니다.

이 기술은 OnKey 함수를 사용하여 특정 키 입력에 매크로를 할당합니다. 다음 코드를 표준 매크로 모듈에 넣습니다.

Sub Assigns()

Dim i As Variant     With Application         For i = 0 To 9             .OnKey i, "dig" & i         Next     End With End Sub
Sub ClearAssigns()

Dim i As Variant     With Application         For i = 0 To 9             .OnKey i         Next     End With End Sub
Sub dig0()

ActiveCell.Value = 0     ActiveCell.Offset(1, 0).Select End Sub
Sub dig1()

ActiveCell.Value = 1     ActiveCell.Offset(1, 0).Select End Sub
Sub dig2()

ActiveCell.Value = 2     ActiveCell.Offset(1, 0).Select End Sub
Sub dig3()

ActiveCell.Value = 3     ActiveCell.Offset(1, 0).Select End Sub
Sub dig4()

ActiveCell.Value = 4     ActiveCell.Offset(1, 0).Select End Sub
Sub dig5()

ActiveCell.Value = 5     ActiveCell.Offset(1, 0).Select End Sub
Sub dig6()

ActiveCell.Value = 6     ActiveCell.Offset(1, 0).Select End Sub
Sub dig7()

ActiveCell.Value = 7     ActiveCell.Offset(1, 0).Select End Sub
Sub dig8()

ActiveCell.Value = 8     ActiveCell.Offset(1, 0).Select End Sub
Sub dig9()

ActiveCell.Value = 9     ActiveCell.Offset(1, 0).Select End Sub

매크로를 시작하려면 할당 매크로를 실행하십시오. 그런 다음 숫자를 입력 할 때마다 숫자가 현재 셀에 채워지고 오른쪽에있는 다음 셀이 선택됩니다. 텍스트를 입력하면 아무 일도 일어나지 않습니다.

(물론 B2B와 같이 혼합 된 값을 입력하려는 경우 “2”를 누르면 셀에서 종료됩니다.) 이러한 유형의 데이터 입력을 완료하면 ClearAssigns 매크로를 실행합니다. 마무리합니다.

_ 참고 : _

이 페이지 (또는 ExcelTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.

link : / excelribbon-ExcelTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요].

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (6614)은 Microsoft Excel 97, 2000, 2002 및 2003에 적용됩니다. 여기에서 Excel (Excel 2007 이상)의 리본 인터페이스에 대한이 팁 버전을 찾을 수 있습니다.

link : / excelribbon-Accepting_Only_a_Single_Digit [한 자리 만 허용].