반응형
VBA에서 FileSystemObject를 어떻게 사용합니까?
참조해야 할 것이 있습니까? 어떻게 사용합니까?
Dim fso As New FileSystemObject
Dim fld As Folder
Dim ts As TextStream
이러한 개체를 인식하지 못하기 때문에 오류가 발생합니다.
Excel 내에서 VB 실행 실행 라이브러리에 대한 참조를 설정해야합니다. 관련 파일은 일반적으로 다음 위치에 있습니다.\Windows\System32\scrrun.dll
- 이 파일을 참조하십시오. Visual Basic Editor ( ALT+ F11)를 로드하십시오.
- 드롭 다운 메뉴에서 도구> 참조를 선택합니다.
- 사용 가능한 참조 목록 상자가 표시됩니다.
- '
Microsoft Scripting Runtime
' 옆의 선택을 선택하십시오. scrrun.dll
파일 의 전체 이름과 경로가 목록 상자 아래에 표시됩니다.- 버튼을 클릭하십시오 OK.
VBA 개체 모델에 대한 액세스가 활성화 된 경우 코드에서 직접 수행 할 수도 있습니다.
액세스 체크 박스 딱으로 활성화 할 수 있습니다. Trust access to the VBA project object model
에서 설정 > 옵션> 보안 센터> 보안 설정> 매크로 설정 파일을
참조를 추가 비용 :
Sub Add_Reference()
Application.VBE.ActiveVBProject.References.AddFromFile "C:\Windows\System32\scrrun.dll"
'Add a reference
End Sub
참조를 제거하기 :
Sub Remove_Reference()
Dim oReference As Object
Set oReference = Application.VBE.ActiveVBProject.References.Item("Scripting")
Application.VBE.ActiveVBProject.References.Remove oReference
'Remove a reference
End Sub
이 사람들은 http://www.w3schools.com/asp/asp_ref_filesystem.asp 파일 시스템을 사용하는 방법에 대한 훌륭한 예를 가지고 있습니다 .
<%
dim fs,fname
set fs=Server.CreateObject("Scripting.FileSystemObject")
set fname=fs.CreateTextFile("c:\test.txt",true)
fname.WriteLine("Hello World!")
fname.Close
set fname=nothing
set fs=nothing
%>
Excel 2013에서 생성 높이는 다음과 가변 개체입니다.
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
위 답변의 코드 대신 :
Dim fs,fname
Set fs=Server.CreateObject("Scripting.FileSystemObject")
높은 수준의 스크립팅 작동을 Excel 2010 (내 버전)에서 약간의 수정이 필요합니다. 다음 코드에 사용자가 파일을 선택하는 데 사용하는 코드도 추가되었습니다.
Dim intChoice As Integer
Dim strPath As String
' Select one file
Application.FileDialog(msoFileDialogOpen).AllowMultiSelect = False
' Show the selection window
intChoice = Application.FileDialog(msoFileDialogOpen).Show
' Get back the user option
If intChoice <> 0 Then
strPath = Application.FileDialog(msoFileDialogOpen).SelectedItems(1)
Else
Exit Sub
End If
Dim FSO As New Scripting.FileSystemObject
Dim fsoStream As Scripting.TextStream
Dim strLine As String
Set fsoStream = FSO.OpenTextFile(strPath)
Do Until fsoStream.AtEndOfStream = True
strLine = fsoStream.ReadLine
' ... do your work ...
Loop
fsoStream.Close
Set FSO = Nothing
도움이 되셨기를 바랍니다.
친애하는
파비오
참조를 추가 한 후
Dim fso As New Scripting.FileSystemObject
참고 URL : https://stackoverflow.com/questions/3233203/how-do-i-use-filesystemobject-in-vba
반응형
'IT' 카테고리의 다른 글
전역 변수를 만드는 방법은 무엇입니까? (0) | 2020.08.12 |
---|---|
"포장을 풀기에 너무 많은 값" (0) | 2020.08.12 |
C # SQL Server- 저장 프로 시저에 목록 전달 (0) | 2020.08.12 |
bash에서 noop [:]의 사용 사례는 무엇입니까? (0) | 2020.08.12 |
매개 변수의 실제 유형을 기반으로 오버로드 된 메소드 선택 (0) | 2020.08.12 |