Excel 使用VBScript导出CSV文件中的最后一行
说到脚本,我还是个新手,所以如果这是我的一个简单错误,请原谅我 我正在尝试使用我创建并使用CMD执行的VBS脚本显示不断更新的CSV文件中的最后一行。我一直在从多个来源提取和修补代码 到目前为止,我只能把它拉到最上面一排,却不知道如何把它换到最下面一排。我的代码有点粗糙。任何帮助都将不胜感激 以下是我目前的代码:Excel 使用VBScript导出CSV文件中的最后一行,excel,csv,vbscript,Excel,Csv,Vbscript,说到脚本,我还是个新手,所以如果这是我的一个简单错误,请原谅我 我正在尝试使用我创建并使用CMD执行的VBS脚本显示不断更新的CSV文件中的最后一行。我一直在从多个来源提取和修补代码 到目前为止,我只能把它拉到最上面一排,却不知道如何把它换到最下面一排。我的代码有点粗糙。任何帮助都将不胜感激 以下是我目前的代码: Option Explicit Dim objExcel Dim excelPath Dim workSheetCount Dim counter Dim currentWorkShe
Option Explicit
Dim objExcel
Dim excelPath
Dim workSheetCount
Dim counter
Dim currentWorkSheet
Dim usedRowsCount
Dim row
Dim top
Dim Cells
Dim curRow
Dim word
excelPath = "c:\Test\test.csv"
WScript.Echo "Reading Data from " & excelPath
Set objExcel = CreateObject("Excel.Application")
objExcel.DisplayAlerts = 0
objExcel.Workbooks.open excelPath, false, true
workSheetCount = objExcel.Worksheets.Count
WScript.Echo "We have " & workSheetCount & " worksheets"
For counter = 1 to workSheetCount
WScript.Echo "-----------------------------------------------"
WScript.Echo "Reading data from worksheet " & counter & vbCRLF
Set currentWorkSheet = objExcel.ActiveWorkbook.Worksheets(counter)
usedRowsCount = currentWorkSheet.UsedRange.Rows.Count
top = currentWorksheet.UsedRange.Row
Set Cells = currentWorksheet.Cells
For row = 0 to (usedRowsCount-1)
curRow = row+top
word = Cells(curRow).Value
WScript.Echo (word)
Next
Next
Set currentWorkSheet = Nothing
objExcel.Workbooks(1).Close
objExcel.Quit
Set currentWorkSheet = Nothing
Set objExcel = Nothing
嗯
CSV是一种文本格式,因此您可以使用
FileSystemObject
方法轻松处理它,而无需使用Excel。谢谢!相比之下,我发现我做了很多不必要的脚本编写。
filename = "C:\Test\test.csv"
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile(filename)
Do Until f.AtEndOfStream
line = f.ReadLine
Loop
f.Close
WScript.Echo line