지정된 디렉토리의 파일 목록을 반환합니다.
Parameters - Function 프로시져의 인수를 정의 하는곳. 인수는 변수 입니다.
1) Filter - 변수 이름은 "Filter" 입니다. String 타입의 변수를 정의합니다.
- A filename filter, such as "*.prt"
2) Version - 모든 버전 또는 최신 버전을 찾아야하는지 여부를 나타내는 플래그입니다. 또한 반환 된 목록을
알파벳순으로 정렬 할 수 있습니다.
- IpfcFileList은 -> Enum EpfcFileListOpt 클래스 입니다
이 열거 유형은 디렉토리에 파일을 나열 할 때 반환되어야하는 파일을 나타냅니다.
- 아래의 값 중 하나를 선택 합니다
Values
EpfcFILE_LIST_ALL
List all files (including multiple versions of the same file).
EpfcFILE_LIST_LATEST
List only the latest version of each file.
EpfcFILE_LIST_ALL_INST
Same as FILE_LIST_ALL, to show instances for PDM locations.
EpfcFILE_LIST_LATEST_INST
Same as FILE_LIST_LATEST, to show instances for PDM locations.
EpfcFileListOpt_nil
Use this enumerated value to represent "null" passed to optional properties or method arguments.
3) Path
The directory
함수 정의는 아래와 같이 하면 됩니다.
IpfcBaseSession.ListFiles("*.prt", EpfcFILE_LIST_LATEST, "d:\idt")
함수의 변수 타입 정의
as Istringseq
문자열의 순서를 정의 합니다.
사용자는 목록에서 정수 인덱스 (위치)로 요소에 액세스 할 수 있습니다. Sequence는 요소에 대한 위치 (인덱싱 된) 액세스 방법을 제공합니다. 시퀀스는 0부터 시작합니다. 폴더 아래의 파일 이름들에 인덱스 번호를 붙입니다.
Sub file_list()
Dim asynconn As New pfcls.CCpfcAsyncConnection
Dim conn As pfcls.IpfcAsyncConnection
Set conn = asynconn.Connect("", "", ".", 5)
Dim oSession As pfcls.IpfcBaseSession
Set oSession = conn.session
Dim FileList As Istringseq
Set FileList = oSession.ListFiles("*.prt", EpfcFILE_LIST_LATEST, "D:\ElectricMotor-models")
For i = O To FileList.Count - 1
Cells(i + 1, 1) = FileList.Item(i)
Next i
'Disconnect with Creo
conn.Disconnect (2)
End Sub
프로시져 실행 결과
선택된 폴더의 하위에 있는 폴더 이름 찾기
Function ListSubdirectories
Sub folder_list()
Dim asynconn As New pfcls.CCpfcAsyncConnection
Dim conn As pfcls.IpfcAsyncConnection
Set conn = asynconn.Connect("", "", ".", 5)
Dim session As pfcls.IpfcBaseSession
Set session = conn.session
Dim oSequence As Istringseq
Set oSequence = session.ListSubdirectories("D:\TECH_MODEL")
For i = 0 To oSequence.Count - 1
Cells(i + 1, 1) = oSequence.Item(i)
Next i
'Disconnect with Creo
conn.Disconnect (2)
End Sub
"Istringseq" 개체는 문자열의 시퀀스 (순서를 가지고 나열되어 있는 어떤 객체)
사용자는 목록에서 정수 인덱스(위치)로 요소에 액세스할 수 있습니다. Sequence는 해당 요소에 대한 위치(인덱싱된) 액세스를 위한 메서드를 제공합니다. 시퀀스는 0을 기준으로 합니다.
'VBA For Creo' 카테고리의 다른 글
#1 IpfcSession : 화면 UI를 이용하여 파일 오픈 하기 (0) | 2021.01.13 |
---|---|
#2 - Hello 메세지 표시하기 (0) | 2021.01.12 |
VBA 기본 문법 (0) | 2021.01.12 |
#4 IpfcBaseSession - sub (프로시저) (0) | 2021.01.11 |
#2 IpfcBaseSession 이해 - Function 이해 (0) | 2021.01.11 |