如何从文本文件中读取大文件列表以形成查询

时间:2013-09-28 10:40:16

标签: sql excel vba

我有这个查询,我必须在excel中多次运行,我需要更改其中的文件列表。

   select * from files 
   where 
   filename in ('filename1','filename2')

所以我在TEMP中的查询文件名中有一个TEMP,我想循环并获取所有文件列表的结果。我唯一的问题是将.txt读入TEMP并对txt文件中的所有文件名执行一次查询。我知道如何逐行阅读文件,所以没有帮助。

我想要读取列表的文本文件就像

文件名1 文件名2 。 。 。 。 filename15000

是一些大数字。

    dim filelist as string
    dim filelistpath as string
    sqlstring = "select count(*) from files where  filename in TEMP"
    filelistpath = "c:\"

    open filelistpath for input as #1
    do while not EOF(1)
    line input #1,text
    'here i should construct my file list to replace the TEMP below, how ?
    loop
    close #1 
    sqlstring = replace(sqlstring,TEMP, filelist)

    set rs = conn.execute(sqlstring)

    'here i want to write the result to my excel sheet, how ?

感谢

1 个答案:

答案 0 :(得分:0)

我格式化了文本,只是像整体一样阅读

Function GetText(sFile As String) As String
   Dim nSourceFile As Integer, sText As String

 ''Close any open text files
  Close

  ''Get the number of the next free text file
   nSourceFile = FreeFile

  ''Write the entire file to sText
   Open sFile For Input As #nSourceFile
   sText = Input$(LOF(1), 1)
   Close

   GetText = sText
   End Function