2014-10-02 2 views
-2

이 코드를 손상시키지 않고 Excel에 저장했지만 Windows를 다시 설치하면 바보가되었습니다. VBA &으로이 쓰레기가 나옵니다.이 솔루션을 찾으려면 꽤 시간이 걸렸습니다. 오후부터 저녁까지 코드를 얻은 게시물을 찾고 있지만 찾을 수는 없습니다.VBA가 셀 내에서 상위 폴더를 반환합니다.

부모 폴더 이름을 선택한 셀에 표시하려면 VBA/매크로가 필요합니다.

도와주세요 !! 사전

+0

현재 통합 문서의 경로를 의미합니까? –

+0

어떤 형식으로 상위 폴더가 필요합니까? 예를 들어'C : \ Temp \ Path \ Workbook1.xlsx' 또는'C : \ Temp \ Path'와 같은 것이 필요합니까 아니면 간단히'Path'가 필요합니까? – Soulfire

+0

간단히'path' 감사합니다. – Legg1979

답변

0

이 해킹 같은 느낌,하지만에서

감사합니다 ... 여기

Sub WorkbookParentDirectory() 
    Dim x() As String 
    x = Split(ThisWorkbook.Path, "\") 
    ActiveSheet.Range("A1").Value = x(UBound(x) - 1) 
End Sub 

는 함수 위의 버전입니다 : 당신이 부모를 원하는 셀에

Public Function WorkbookParentDirectory() 
    Dim x() As String 
    x = Split(ThisWorkbook.Path, "\") 
    WorkbookParentDirectory = x(UBound(x) - 1) 
End Function 

디렉토리 유형이 =WorkbookParentDirectory()

+0

Excel을 반환하는 것으로 보입니다. 다른 경로에 저장했지만 여전히 Excel 만 저장했습니다. 내가 뭔가 잘못하고 있는거야? – Legg1979

+0

파일이있는 디렉토리의 '부모'를 원하십니까? 셀에서 호출 할 수있는 함수를 선호 하시겠습니까? – tbur

+0

기본적으로 나는 수표를 작성하는 데 많은 수의 체크리스트를 가지고 있습니다. 작업 번호는 항상 폴더 이름입니다. 따라서 폴더 이름을 포함하는 매크로를 추출하면 여러 엑셀 파일에 입력하지 않아도됩니다. – Legg1979

1

코드 :

Public Function GetPath() As String 
    GetPath = Right(ThisWorkbook.Path, Len(ThisWorkbook.Path) - InStrRev(ThisWorkbook.Path, "\")) 
End Function 

이 코드를 통합 문서의 모듈에 붙여 넣으십시오. 그런 다음 셀에서 수식을 선택하십시오.
=GetPath()

+0

안녕하세요 코드에 대한 감사. 이 코드는 작동하지만 일단 내 통합 문서를 완성하면 다른 폴더에 저장됩니다.이 코드는 항상 현재 폴더 이름을 표시합니다. 수식이 아닌 값으로 입력해야하므로 파일을 이동할 때 원래 값이 유지됩니다. – Legg1979

+0

복사하여 값을 붙여 넣을 수 있습니다. –

관련 문제