2017-11-25 2 views
0

내 문서에는 대개 반복적으로 사용할 수있는 특정 문구가 있으므로 시간을 절약하기 위해 모두 단축키로 사용하고 싶습니다. 좀 더 구체적으로 말하자면, Macro1 (삽입 "물론"), Macro2 (삽입 "문제"), Macro3 (시간에 따라 삽입), Alt +1,2로 단축키를 만들려고합니다. , 3입니다. Alt + 2를 누르면 "문제는 내 고객에게 즉시 삽입됩니다.엑셀 파일의 텍스트를 워드 문서 (Word VBA)에 삽입

여기 내가 사용 기본 매크로입니다 :

Sub Macro1() 
    Selection.TypeText Text:="sample text" 
End Sub 

문제는 새로운 문서을 Macro1, 2의 내용에 대해, 그리고 (3) 자주 변경해야합니다. 편집의 편의를 위해 모든 문구를 포함하는 Excel 파일을 만들 계획을 갖고 있지만 특정 셀을 단어 매크로에 다시 연결하는 방법을 모릅니다. 그렇게 할 수있는 방법이 있습니까?

참고 : AutoText 또는 Building Block 기능을 알고 있지만 Excel 테이블로 쉽게 편집 할 수 없습니다.

+0

'편지 병합 '을 사용해 보셨습니까? – Arul

+1

아직 명확하지 않습니다. 수동으로 입력하는 동안 구두점을 삽입하기 위해 단축키를 만드는 것과 같은 기존 필드를 wordmerge와 같이 채우고 싶습니까? – KekuSemau

+0

예, Excel 셀의 내용을 Word 문서로 가져올 수 있습니다. 사실 수십 가지의 방법이 있으며 각각 다른 상황에서 사용됩니다. 전후의 몇 가지 예를 들려 줄 수 있습니까? ** 매크로가 여러 개있는 이유는 무엇입니까? 자세한 내용을 참조하십시오. – ashleedawg

답변

0

Excel 파일이 "C : \ temp \"에 있고 y 구문이 첫 번째 워크 시트와 첫 번째 열에 저장되었다고 가정 할 때 다음 예가 있습니다. 이 함수는이 Excel 파일의 첫 번째 셀 (A1)을 읽습니다. :

Function Read_Excel_Cell(cellRin As Long) As String 

    Dim oExcel As Excel.Application 
    Dim myWB As Excel.Workbook 

    Set oExcel = New Excel.Application 
    Set myWB = oExcel.Workbooks.Open("C:\temp\phrases.xlsx") 
    Read_Excel_Cell = myWB.Sheets(1).Cells(cellRin, 1) 
    myWB.Close 
    Set myWB = Nothing 
    Set oExcel = Nothing 

End Function 

그리고이 매크로는 문서에 삽입됩니다

Sub InsertText1() 
    Selection.TypeText Text:=Read_Excel_Cell(1) 
End Sub 

그래서 당신은 많은 매크로는 당신이 필요로 이런 식으로 만들 수와 같은 기능 Read_Excel_Cell()는 서로 참조하지만 수를 사용하여 열.

Word vba에서이 작업을 실행하려면 Tools \ References tick Microsoft Excel Object Library에서 Excel 참조를 추가해야합니다.