반응형
VBA를 사용하여 Excel 시트를 현재 디렉토리에 저장
저는 vba Excel에 시트를 만들었습니다.현재 디렉터리를 저장하고 싶지만 절대 경로가 아닌 경우 다른 곳에서 실행해도 문제가 없습니다.
누가 도와줄 수 있어요?
당신의 상황이 정확히 무엇을 필요로 하는지는 모르겠지만, 다음과 같은 것들이 당신을 시작하게 할 수도 있습니다.여기서 핵심은 사용하는 것입니다.ThisWorkbook.Path
상대 파일 경로를 가져오려면:
Sub SaveToRelativePath()
Dim relativePath As String
relativePath = ThisWorkbook.Path & Application.PathSeparator & ActiveWorkbook.Name
ActiveWorkbook.SaveAs Filename:=relativePath
End Sub
VBA에는 Excel에 저장된 "현재 디렉터리"를 반환하는 CurDir 키워드가 있습니다.현재 디렉토리에 영향을 주는 모든 것이 있는지는 모르겠지만 워크북을 열거나 저장하면 디렉토리가 변경됩니다.
MyWorkbook.SaveAs CurDir & Application.PathSeparator & "MySavedWorkbook.xls"
이렇게 하면 저장할 시트가 저장되지 않았으며 파일 이름을 코드로 정의하려고 합니다.
경로를 생략하면 파일이 현재 디렉터리에 자동으로 저장됩니다.다음과 같은 방법을 사용해 보십시오.
ActiveWorkbook.SaveAs "Filename.xslx"
한 단계 더 나아가 파일을 상대 디렉터리에 저장하려면 바꾸기 기능을 사용할 수 있습니다.워크북을 c:\property\california\sacramento\workbook.xlsx에 저장했다고 가정하면 속성을 버클리로 이동할 수 있습니다.
workBookPath = Replace(ActiveWorkBook.path, "sacramento", "berkley")
myWorkbook.SaveAs(workBookPath & "\" & "newFileName.xlsx"
파일 구조에 대체에 사용된 텍스트의 인스턴스가 하나 포함된 경우에만 작동합니다.YMMV.
언급URL : https://stackoverflow.com/questions/4497646/saving-an-excel-sheet-in-a-current-directory-with-vba
반응형
'source' 카테고리의 다른 글
Oracle 12c에서 SQL 쿼리의 결과를 JSON으로 반환합니다. (0) | 2023.06.10 |
---|---|
C 다중 매크로의 사전 프로세서 테스트 정의 (0) | 2023.06.10 |
이 식은 호출할 수 없습니다.'번호' 유형에 호출 서명이 없습니다. (0) | 2023.06.10 |
Firebase에서 노드를 삭제/제거하는 방법 (0) | 2023.06.10 |
Oracle: DBMS_UTILITY.EXEC_DDL_STATION 대 즉시 실행 (0) | 2023.06.10 |