VBA-需要附加到大文本中的行尾
我有一个系统,一次只能从表中读取50列数据。表中有150列我需要阅读。这个表有一百万行 到目前为止,我一直在做的是读取前50列并将所有100万行写入一个文本文件 接下来我需要做的是,读取下一个包含50列的块,并将100万到100万行附加到我已经写入的现有文本文件中VBA-需要附加到大文本中的行尾,vba,excel,Vba,Excel,我有一个系统,一次只能从表中读取50列数据。表中有150列我需要阅读。这个表有一百万行 到目前为止,我一直在做的是读取前50列并将所有100万行写入一个文本文件 接下来我需要做的是,读取下一个包含50列的块,并将100万到100万行附加到我已经写入的现有文本文件中 这就是我陷入困境的地方。我不确定如何写入文本文件中的特定行。我希望不必循环现有文本文件中的每一行,以获得需要附加到的行。有没有一种方法可以指定我需要附加到的行,而不必循环文本文件来查找正确的行?我将使用SQL OLEDB并使用记录集简
这就是我陷入困境的地方。我不确定如何写入文本文件中的特定行。我希望不必循环现有文本文件中的每一行,以获得需要附加到的行。有没有一种方法可以指定我需要附加到的行,而不必循环文本文件来查找正确的行?我将使用SQL OLEDB并使用记录集简单地输出数据。可能需要一些时间,但应该有效。尝试在循环中使用
LIMIT
和FETCH
,以防结果无法一次性加载。或者,在SQL语句中添加一个循环,并获取高于或低于特定行ID的记录(如果您的记录ID是数字而不是散列),例如,WHERE ID>[OLD_ID]和ID为什么不使用ms office的导出功能?例如,您可以将表格导出到csv文件,因为excel对行数有限制。您读取的“系统”到底是什么?那么,您如何将前50行写入文本文件,提供代码,我们可以处理它?您可以演示如何读取数据吗?你们怎么进口?
Dim fileName As String, textData As String, textRow As String, fileNo As Integer
fileNo = FreeFile
Open fileName For Output As #fileNo
Set rs = CreateObject("ADODB.Recordset")
sConn = "OLEDB;Provider=SQLOLEDB;Data Source=" & _
serverInstance & ";Initial Catalog=" & database & _
";User ID=" & userId & ";Password=" & password & ";"
strSQL = "SELECT * FROM [table_name] "
rs.Open strSQL, strcon, 3, 3
rs.MoveFirst
Do
textData = ""
textData = textData & ";" & rs("Col1")
textData = textData & ";" & rs("Col2")
textData = textData & ";" & rs("Col3") & vbNewLine
Print #fileNo, textData
rs.MoveNext
Loop Until rs.EOF
Close #fileNo