2014-01-24 14 views
1

내가 여러 파일 형식이있는 디렉토리가 말 확장의 FileFilter 옵션을 변경하는 사용자를 방지하고 이미 만 CSV 파일VBA 대화는

paths = Application.GetOpenFilename("Comma Separated Values (*.csv),*.csv", _ 
MultiSelect:=True) 

위의 코드는 필터를 적용 않습니다 표시하도록 파일 필터를 설정했는지 바르게.

이제 필터 이름을 editbox에 입력하고 open/enter를 누르면 파일 확장 필터가 작동하지 않거나 사용자의 필터로 재설정됩니다.

이것은 내가, 파일 열기 대화 편집 상자에서 test*에서 같은 디렉토리 및 유형에 test.doctest.csv라는 파일이있는 경우 Word 문서와 CSV 파일을 모두 선택 가능한 표시됩니다 것을 의미합니다.

버그가 이것에 관한 방법이 있습니까? 즉, 사용자 정의 필터를 미리 정의 된 필터에 추가하려고합니다.

+0

버그 또는 기능이라고하지만, Office/VBA뿐 아니라 Windows 파일 대화 상자를 사용하는 모든 곳에서 공통적으로 사용됩니다. 난 당신이 주위에 얻을 수있는 유일한 방법은 처음부터 자신의 파일 선택기를 작성하는 것이라고 생각 ... – techturtle

+0

나는 그것을 버그처럼 취급해야 할까봐 걱정 - 사용자가 실수로 잘못된 파일 형식과 원인 파일을 선택할 수 있습니다 설명되지 않는 한 코드의 오류로 인해 처음부터 필터가 설정되었습니다. 고마워, 단지 그것이 의도 된 행동인지 알고 싶었다. – colintso

답변

1

나는 당신이 무엇을 요구하고 있는지 이해하고 있다고 생각합니다. 나는이 어딘가에 누워있는 것을 알았다.

이 무티없이

선택 :

fileOpen = Application.GetOpenFilename("Text Files (*.csv),*.csv,Word Files (*.doc),*.doc") 

이 무티에 플러스 제목을 선택하는 데 도움이

fileOpen = Application.GetOpenFilename("Text Files (*.csv),*.csv,Word Files (*.doc),*.doc", 1, "Pick Your CSV File", , True) 

희망을!

+0

당신이 저를 오해했을 수도 있습니다 - 조금 더 명확하게 설명하려고 노력할 것입니다. Windows 파일 대화 상자를 사용할 때 (예 : 메모장에서 파일을 여는 경우 여러 파일 형식이있는 폴더로 이동하십시오. 이제 "*"를 입력하십시오. 모든 파일이 표시되고 원래 * .txt 필터는 무시되지만 여전히 활성 상태로 표시됩니다. VBA에서 Windows 파일 대화 상자를 사용할 때 필터 재설정을 허용하지 않는 해결책을 찾고자했습니다. – colintso