有很多类似的帖子,但没有什么能完全符合我的要求,因为它需要我理解
我想使用Access 2007 VBA打开csv文件并替换列标题行,即:
OldColumn1,OldColumn2
1,2
带
NewColumn1,NewColumn2
1,2
即不会扰乱数据的残余。
然后保存并关闭。
我已尝试过此代码,但它删除了我的数据:
Sub WriteFile()
Dim OutputFileNum As Integer
Dim PathName As String
PathName = Application.ActiveWorkbook.Path
OutputFileNum = FreeFile
Open PathName & "\Test.csv" For Output Lock Write As #OutputFileNum
Print #OutputFileNum, "NewCol1" & "," & "NewCol2"
Close OutputFileNum
End Sub
答案 0 :(得分:1)
显然,你可以做很多额外的事情来自动化和重现任何数量或类型的文件的这个概念。但是上述解决方案应该适用于所有MS Access环境。
如果您想了解任何这些步骤的详细信息,请与我们联系。
答案 1 :(得分:0)
继我之前的评论之后,请参阅使用Excel参考的方法:
Public Sub EditCsv()
Dim xlApp As Object
dim xlWbk As Object
Dim xlWst As Object
Set xlApp = CreateObject("Excel.Application")
Set xlWbk = xlApp.Workbooks.Open ".../Test.csv" 'Amend this to your needs
Set xlWst = xlWbk.Sheets(1)
'This assumes the columns are at the beginning of the file
xlWst.Range("A1") = "My New Column Name"
xlWst.Range("B1") = "My New Second Column Name"
xlWbk.Close -1 'Close and save the file here
xlApp.Quit
Set xlApp = Nothing
Set xlWbk = Nothing
Set xlWst = Nothing
End Sub