2016-08-03 1 views
2

Excel VBA 매크로에서 Workbooks.Open 명령을 사용하여 특정 대상 .xls 파일을 열려고하면 대상 Excel 파일이 열리고 끝에 "1"이 추가됩니다 파일 이름의. 이 변경된 파일 이름은 파일 창()에 나타납니다. 각 후속 시도 (대상 Excel 파일 & 스크립트를 수동으로 닫음)를 수행 할 때마다 대상 파일 이름 끝에 추가 번호가 하나씩 증가합니다.Excel 2013 VBA Workbooks.Open이 잘못된 파일 이름으로 열림

아무 문제없이 Windows 탐색기에서 파일을 수동으로 열 수 있으므로 대상 Excel 파일 자체가 손상된 것으로 나타나지 않습니다. 또한 내가이 방법으로 열면 파일 이름이 올바르게 표시됩니다 ('1'이 끝에 붙지 않음). Explorer 창에서 'Type'열을 보면 대상 파일이 'Microsoft Excel 97-2003 Worksheet'임을 보여 주므로 파일 확장명이 실제 파일 형식과 일치합니다. 이 문제에 어떤 도움을 크게 감상 할 수

Public Sub Import_TD_TVs() 

    Dim ActiveWB As Workbook 
    Dim srcTDWB As Workbook 

    Dim wkbkStr As String 


      Set ActiveWB = ActiveWorkbook 

      wkbkStr = "X:\sites\DTS_Data_Files.xls" 

      Set srcTDWB = Workbooks.Open(wkbkStr, , False) 

End Sub 

:

다음은 내가 사용하고있는 코드입니다!

+1

작업 관리자를 열고 다른 Excel 인스턴스가 열려 있지 않은지 확인하십시오. 그런 다음 임시 디렉토리를 지 웁니다. – Sorceri

+1

그래서 파일 이름을 열면 "DTS_Data_Files.xls (1)"또는 "DTS_Data_Files1.xls"가됩니까? (또는 다른 방법으로?) 그것은 그 통합 문서의 두 번째 인스턴스 인 것 같습니다. 컴퓨터를 다시 시작하고 코드를 처음 실행하면 어떻게됩니까? – BruceWayne

+0

FYI -'탐색기 창에서 '유형'열을 보면 대상 파일이 'Microsoft Excel 97-2003 Worksheet'' 인 것으로 나타납니다. - 탐색기는 파일 확장자 만 기반으로 한 "유형"을 보여줍니다. 실제로 파일입니다. 이를 확인하려면 .txt 확장명을 가진 텍스트 파일을 만든 다음 Explorer를 사용하여 .xls 확장명으로 이름을 바꿉니다. 그런 다음이를 "Microsoft Excel 97-2003 워크 시트"로 표시합니다. – YowE3K

답변

1

대상 통합 문서가 원래 서식 파일 (.xlt) 파일로 저장된 다음 Windows 탐색기에서 수동으로 확장명 (.xls)으로 변경된 경우 발생할 수 있습니다. 대상 통합 문서를 열고 .xls 파일 형식으로 '다른 이름으로 저장 ...'을 수행 할 수 있습니다.

+0

감사합니다! 그게 정확히 문제였습니다. 나는 '다른 이름으로 저장'을 열었을 때 & .xlt가 '다른 이름으로 저장'에 기본 파일 유형으로 나열되었음을 발견했습니다. 즉시 .xls 파일로 저장 한 후 닫고 스크립트를 다시 실행했습니다. 이번에는 올바른 파일 이름으로 열었습니다. 명성!! – Garbunkel