매크로로 표 셀 채우기 (Microsoft Word)
Word에서 표로 작업 할 때 표의 다양한 셀을 설정된 값으로 채울 수 있습니다. 예를 들어, 클립 보드에 무언가를 복사 한 다음 클립 보드의 내용을 표의 각 셀에 붙여 넣을 수 있습니다. 다음 매크로가 트릭을 수행합니다.
Sub PasteToCells() Dim TargetRange As Range Dim oTargCell As Cell If Selection.Cells.Count = 0 Then 'Quit if no cells in selection MsgBox "No cells selected", vbCritical Exit Sub End If On Error Resume Next Set TargetRange = Selection.Range For Each oTargCell In Selection.Cells oTargCell.Range.Paste Next oTargCell TargetRange.Select End Sub
매크로는 선택 항목에 일부 셀이 포함되어 있는지 확인하는 것으로 시작됩니다. 그렇지 않은 경우 사용자에게 알리고 매크로가 종료됩니다.
그런 다음 선택 항목이 변수에 저장되어 매크로 끝에서 다시 선택할 수 있습니다. 이 코드가 없으면 매크로는 원래 선택 항목의 첫 번째 셀에서 축소 된 삽입 지점을 그대로 둡니다.
매크로의 실제 고기는 For … Next 루프에 있습니다. 선택 영역의 셀을 단계별로 실행하고 클립 보드의 내용으로 모든 항목을 바꿉니다. 마지막으로 원래 선택이 다시 선택되고 매크로가 종료됩니다.
매크로에도 On Error 문이 있음을 알 수 있습니다. 이 문은 기본적으로 Word에 오류를 무시하고 다음 문을 계속하도록 지시합니다. 트리거 될 수있는 오류에는 클립 보드에 아무것도없는 매크로 실행 또는 테이블 셀 내에 테이블 붙여 넣기 시도가 포함됩니다. Word는 두 작업을 모두 수행하지 않지만 선택 영역의 모든 셀에서 완료 될 때까지 계속 시도합니다.
이 매크로는 선택한 셀의 내용을 클립 보드의 내용으로 바꿉니다. 이전에 세포에 있던 모든 것이 손실됩니다. 대신 셀의 기존 내용을 방해하지 않고 셀의 시작 부분에 정보를 추가하려면 다음과 같이 약간 수정 된 매크로를 사용할 수 있습니다.
Sub PasteToCellsStart() Dim TargetRange As Range Dim oTargCell As Cell Dim PasteRange As Range If Selection.Cells.Count = 0 Then 'Quit if no cells in selection MsgBox "No cells selected", vbCritical Exit Sub End If On Error Resume Next Set TargetRange = Selection.Range For Each oTargCell In Selection.Cells Set PasteRange = oTargCell.Range PasteRange.Collapse wdCollapseStart PasteRange.Paste Next oTargCell TargetRange.Select End Sub
마지막 수정 사항은 셀에있는 항목의 끝에 붙여 넣을 매크로를 만드는 것입니다. 앞의 매크로에서 wdCollapseStart를 wdCollapseEnd로 바꿀 수 있다고 생각할 수 있지만 테이블 내에서는 제대로 작동하지 않습니다. 대신 위 매크로에서 For … Next 루프를 바꿔야합니다. 다음 예제는 매크로의 변경된 버전을 보여줍니다.
Sub PasteToCellsEnd() Dim TargetRange As Range Dim oTargCell As Cell Dim PasteRange As Range If Selection.Cells.Count = 0 Then 'Quit if no cells in selection MsgBox "No cells selected", vbCritical Exit Sub End If On Error Resume Next Set TargetRange = Selection.Range For Each oTargCell In Selection.Cells Set PasteRange = oTargCell.Range.Characters.Last PasteRange.Collapse wdCollapseStart PasteRange.Paste Next oTargCell TargetRange.Select End Sub
_ 참고 : _
이 페이지 (또는 WordTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.
link : / wordribbon-WordTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요]
.
_WordTips_는 비용 효율적인 Microsoft Word 교육을위한 소스입니다.
(Microsoft Word는 세계에서 가장 널리 사용되는 워드 프로세싱 소프트웨어입니다.)이 팁 (13157)은 Office 365의 Microsoft Word 2007, 2010, 2013, 2016, 2019 및 Word에 적용됩니다. Word의 이전 메뉴 인터페이스 :
link : / word-Filling_Table_Cells_with_a_Macro [매크로로 표 셀 채우기]
.