Apakah ada sesuatu yang perlu saya rujuk? Bagaimana saya menggunakan ini:
Dim fso As New FileSystemObject
Dim fld As Folder
Dim ts As TextStream
Saya mendapatkan pesan kesalahan karena tidak mengenali objek ini.
Apakah ada sesuatu yang perlu saya rujuk? Bagaimana saya menggunakan ini:
Dim fso As New FileSystemObject
Dim fld As Folder
Dim ts As TextStream
Saya mendapatkan pesan kesalahan karena tidak mengenali objek ini.
Jawaban:
Dalam Excel Anda perlu mengatur referensi ke pustaka run-time skrip VB. File yang relevan biasanya terletak di\Windows\System32\scrrun.dll
Microsoft Scripting Runtime
'scrrun.dll
file akan ditampilkan di bawah kotak daftarIni juga dapat dilakukan secara langsung dalam kode jika akses ke model objek VBA telah diaktifkan.
Akses dapat diaktifkan dengan mencentang kotak yang Trust access to the VBA project object model
ditemukan di File> Opsi> Pusat Kepercayaan> Pengaturan Pusat Kepercayaan> Pengaturan Makro
Untuk menambahkan referensi:
Sub Add_Reference()
Application.VBE.ActiveVBProject.References.AddFromFile "C:\Windows\System32\scrrun.dll"
'Add a reference
End Sub
Untuk menghapus referensi:
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
Di excel 2013 string pembuatan objek adalah:
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
alih-alih kode pada jawaban di atas:
Dim fs,fname
Set fs=Server.CreateObject("Scripting.FileSystemObject")
Dim fso As Object
Orang-orang ini memiliki contoh yang sangat baik tentang bagaimana menggunakan objek sistem berkas 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
%>
Setelah menambahkan referensi, saya harus menggunakan
Dim fso As New Scripting.FileSystemObject
Setelah mengimpor runtime skrip seperti yang dijelaskan di atas, Anda harus membuat sedikit modifikasi agar dapat berfungsi di Excel 2010 (versi saya). Ke dalam kode berikut saya juga menambahkan kode yang digunakan untuk pengguna untuk memilih file.
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
Semoga membantu!
salam Hormat
Fabio